/**
 * Project Name:JZGPingGuShi
 * File Name:ChineseUtil.java
 * Package Name:com.gc.jzgpinggushi.uitls
 * Date:2014-9-1上午10:37:21
 * Copyright (c) 2014, wangyd523@gmail.com All Rights Reserved.
 *
*/

package com.jzg.jcptadmin.Utils;

import android.text.TextUtils;

import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.List;

/**
 * ClassName:ChineseUtil <br/>
 * Function: TODO ADD FUNCTION. <br/>
 * Reason:	 TODO ADD REASON. <br/>
 * Date:     2014-9-1 上午10:37:21 <br/>
 * @author   汪渝栋
 * @version  
 * @since    JDK 1.6
 * @see 	 
 */
public class ChineseUtil
{

	/** 存放拼音及区位码的集合 */
	private static List<Spell> spellList = new ArrayList<Spell>(3500);

	/**
	 * 初始化构建拼音和ascii码对应集合
	 */
	static
	{
		initialize();
	}

	/**
	 * 构造函数
	 */
	private ChineseUtil()
	{
	}

	/**
	 * 汉字拼音及ASCII类
	 */
	static class Spell
	{

		/** 拼音 */
		private String strSpells;

		/** 拼音ascii码 */
		private int iSpellValue;

		/**
		 * 汉字构造函数
		 * 
		 * @param spells
		 *            拼音
		 * @param spellValue
		 *            拼音对应的ascii码
		 */
		public Spell(String spells, int spellValue)
		{
			this.strSpells = spells;
			this.iSpellValue = spellValue;
		}

		/**
		 * 获得拼音
		 * 
		 * @return 拼音
		 */
		public String getSpells()
		{
			return strSpells;
		}

		/**
		 * 设置拼音
		 * 
		 * @param spells
		 *            拼音
		 */
		public void setSpells(String spells)
		{
			this.strSpells = spells;
		}

		/**
		 * 获得内容
		 * 
		 * @return 内容
		 */
		public int getSpellValue()
		{
			return iSpellValue;
		}

		/**
		 * 设置内容
		 * 
		 * @param spellValue
		 *            内容
		 */
		public void setSpellValue(int spellValue)
		{
			this.iSpellValue = spellValue;
		}
	}

	/**
	 * 将拼音和ascii码存放到拼音及区位码的集合中
	 * 
	 * @param spell
	 *            拼音
	 * @param ascii
	 *            ascii码
	 */
	private static void spellPut(String spell, int ascii)
	{
		spellList.add(new Spell(spell, ascii));
	}

	/**
	 * 初始化构建汉字拼音字符集及ASCii
	 */
	private static void initialize()
	{
		spellPut("a", -20319);
		spellPut("ai", -20317);
		spellPut("an", -20304);
		spellPut("ang", -20295);
		spellPut("ao", -20292);
		spellPut("ba", -20283);
		spellPut("bai", -20265);
		spellPut("ban", -20257);
		spellPut("bang", -20242);
		spellPut("bao", -20230);
		spellPut("bei", -20051);
		spellPut("ben", -20036);
		spellPut("beng", -20032);
		spellPut("bi", -20026);
		spellPut("bian", -20002);
		spellPut("biao", -19990);
		spellPut("bie", -19986);
		spellPut("bin", -19982);
		spellPut("bing", -19976);
		spellPut("bo", -19805);
		spellPut("bu", -19784);
		spellPut("ca", -19775);
		spellPut("cai", -19774);
		spellPut("can", -19763);
		spellPut("cang", -19756);
		spellPut("cao", -19751);
		spellPut("ce", -19746);
		spellPut("ceng", -19741);
		spellPut("cha", -19739);
		spellPut("chai", -19728);
		spellPut("chan", -19725);
		spellPut("chang", -19715);
		spellPut("chao", -19540);
		spellPut("che", -19531);
		spellPut("chen", -19525);
		spellPut("cheng", -19515);
		spellPut("chi", -19500);
		spellPut("chong", -19484);
		spellPut("chou", -19479);
		spellPut("chu", -19467);
		spellPut("chuai", -19289);
		spellPut("chuan", -19288);
		spellPut("chuang", -19281);
		spellPut("chui", -19275);
		spellPut("chun", -19270);
		spellPut("chuo", -19263);
		spellPut("ci", -19261);
		spellPut("cong", -19249);
		spellPut("cou", -19243);
		spellPut("cu", -19242);
		spellPut("cuan", -19238);
		spellPut("cui", -19235);
		spellPut("cun", -19227);
		spellPut("cuo", -19224);
		spellPut("da", -19218);
		spellPut("dai", -19212);
		spellPut("dan", -19038);
		spellPut("dang", -19023);
		spellPut("dao", -19018);
		spellPut("de", -19006);
		spellPut("deng", -19003);
		spellPut("di", -18996);
		spellPut("dian", -18977);
		spellPut("diao", -18961);
		spellPut("die", -18952);
		spellPut("ding", -18783);
		spellPut("diu", -18774);
		spellPut("dong", -18773);
		spellPut("dou", -18763);
		spellPut("du", -18756);
		spellPut("duan", -18741);
		spellPut("dui", -18735);
		spellPut("dun", -18731);
		spellPut("duo", -18722);
		spellPut("e", -18710);
		spellPut("en", -18697);
		spellPut("er", -18696);
		spellPut("fa", -18526);
		spellPut("fan", -18518);
		spellPut("fang", -18501);
		spellPut("fei", -18490);
		spellPut("fen", -18478);
		spellPut("feng", -18463);
		spellPut("fo", -18448);
		spellPut("fou", -18447);
		spellPut("fu", -18446);
		spellPut("ga", -18239);
		spellPut("gai", -18237);
		spellPut("gan", -18231);
		spellPut("gang", -18220);
		spellPut("gao", -18211);
		spellPut("ge", -18201);
		spellPut("gei", -18184);
		spellPut("gen", -18183);
		spellPut("geng", -18181);
		spellPut("gong", -18012);
		spellPut("gou", -17997);
		spellPut("gu", -17988);
		spellPut("gua", -17970);
		spellPut("guai", -17964);
		spellPut("guan", -17961);
		spellPut("guang", -17950);
		spellPut("gui", -17947);
		spellPut("gun", -17931);
		spellPut("guo", -17928);
		spellPut("ha", -17922);
		spellPut("hai", -17759);
		spellPut("han", -17752);
		spellPut("hang", -17733);
		spellPut("hao", -17730);
		spellPut("he", -17721);
		spellPut("hei", -17703);
		spellPut("hen", -17701);
		spellPut("heng", -17697);
		spellPut("hong", -17692);
		spellPut("hou", -17683);
		spellPut("hu", -17676);
		spellPut("hua", -17496);
		spellPut("huai", -17487);
		spellPut("huan", -17482);
		spellPut("huang", -17468);
		spellPut("hui", -17454);
		spellPut("hun", -17433);
		spellPut("huo", -17427);
		spellPut("ji", -17417);
		spellPut("jia", -17202);
		spellPut("jian", -17185);
		spellPut("jiang", -16983);
		spellPut("jiao", -16970);
		spellPut("jie", -16942);
		spellPut("jin", -16915);
		spellPut("jing", -16733);
		spellPut("jiong", -16708);
		spellPut("jiu", -16706);
		spellPut("ju", -16689);
		spellPut("juan", -16664);
		spellPut("jue", -16657);
		spellPut("jun", -16647);
		spellPut("ka", -16474);
		spellPut("kai", -16470);
		spellPut("kan", -16465);
		spellPut("kang", -16459);
		spellPut("kao", -16452);
		spellPut("ke", -16448);
		spellPut("ken", -16433);
		spellPut("keng", -16429);
		spellPut("kong", -16427);
		spellPut("kou", -16423);
		spellPut("ku", -16419);
		spellPut("kua", -16412);
		spellPut("kuai", -16407);
		spellPut("kuan", -16403);
		spellPut("kuang", -16401);
		spellPut("kui", -16393);
		spellPut("kun", -16220);
		spellPut("kuo", -16216);
		spellPut("la", -16212);
		spellPut("lai", -16205);
		spellPut("lan", -16202);
		spellPut("lang", -16187);
		spellPut("lao", -16180);
		spellPut("le", -16171);
		spellPut("lei", -16169);
		spellPut("leng", -16158);
		spellPut("li", -16155);
		spellPut("lia", -15959);
		spellPut("lian", -15958);
		spellPut("liang", -15944);
		spellPut("liao", -15933);
		spellPut("lie", -15920);
		spellPut("lin", -15915);
		spellPut("ling", -15903);
		spellPut("liu", -15889);
		spellPut("long", -15878);
		spellPut("lou", -15707);
		spellPut("lu", -15701);
		spellPut("lv", -15681);
		spellPut("luan", -15667);
		spellPut("lue", -15661);
		spellPut("lun", -15659);
		spellPut("luo", -15652);
		spellPut("ma", -15640);
		spellPut("mai", -15631);
		spellPut("man", -15625);
		spellPut("mang", -15454);
		spellPut("mao", -15448);
		spellPut("me", -15436);
		spellPut("mei", -15435);
		spellPut("men", -15419);
		spellPut("meng", -15416);
		spellPut("mi", -15408);
		spellPut("mian", -15394);
		spellPut("miao", -15385);
		spellPut("mie", -15377);
		spellPut("min", -15375);
		spellPut("ming", -15369);
		spellPut("miu", -15363);
		spellPut("mo", -15362);
		spellPut("mou", -15183);
		spellPut("mu", -15180);
		spellPut("na", -15165);
		spellPut("nai", -15158);
		spellPut("nan", -15153);
		spellPut("nang", -15150);
		spellPut("nao", -15149);
		spellPut("ne", -15144);
		spellPut("nei", -15143);
		spellPut("nen", -15141);
		spellPut("neng", -15140);
		spellPut("ni", -15139);
		spellPut("nian", -15128);
		spellPut("niang", -15121);
		spellPut("niao", -15119);
		spellPut("nie", -15117);
		spellPut("nin", -15110);
		spellPut("ning", -15109);
		spellPut("niu", -14941);
		spellPut("nong", -14937);
		spellPut("nu", -14933);
		spellPut("nv", -14930);
		spellPut("nuan", -14929);
		spellPut("nue", -14928);
		spellPut("nuo", -14926);
		spellPut("o", -14922);
		spellPut("ou", -14921);
		spellPut("pa", -14914);
		spellPut("pai", -14908);
		spellPut("pan", -14902);
		spellPut("pang", -14894);
		spellPut("pao", -14889);
		spellPut("pei", -14882);
		spellPut("pen", -14873);
		spellPut("peng", -14871);
		spellPut("pi", -14857);
		spellPut("pian", -14678);
		spellPut("piao", -14674);
		spellPut("pie", -14670);
		spellPut("pin", -14668);
		spellPut("ping", -14663);
		spellPut("po", -14654);
		spellPut("pu", -14645);
		spellPut("qi", -14630);
		spellPut("qia", -14594);
		spellPut("qian", -14429);
		spellPut("qiang", -14407);
		spellPut("qiao", -14399);
		spellPut("qie", -14384);
		spellPut("qin", -14379);
		spellPut("qing", -14368);
		spellPut("qiong", -14355);
		spellPut("qiu", -14353);
		spellPut("qu", -14345);
		spellPut("quan", -14170);
		spellPut("que", -14159);
		spellPut("qun", -14151);
		spellPut("ran", -14149);
		spellPut("rang", -14145);
		spellPut("rao", -14140);
		spellPut("re", -14137);
		spellPut("ren", -14135);
		spellPut("reng", -14125);
		spellPut("ri", -14123);
		spellPut("rong", -14122);
		spellPut("rou", -14112);
		spellPut("ru", -14109);
		spellPut("ruan", -14099);
		spellPut("rui", -14097);
		spellPut("run", -14094);
		spellPut("ruo", -14092);
		spellPut("sa", -14090);
		spellPut("sai", -14087);
		spellPut("san", -14083);
		spellPut("sang", -13917);
		spellPut("sao", -13914);
		spellPut("se", -13910);
		spellPut("sen", -13907);
		spellPut("seng", -13906);
		spellPut("sha", -13905);
		spellPut("shai", -13896);
		spellPut("shan", -13894);
		spellPut("shang", -13878);
		spellPut("shao", -13870);
		spellPut("she", -13859);
		spellPut("shen", -13847);
		spellPut("sheng", -13831);
		spellPut("shi", -13658);
		spellPut("shou", -13611);
		spellPut("shu", -13601);
		spellPut("shua", -13406);
		spellPut("shuai", -13404);
		spellPut("shuan", -13400);
		spellPut("shuang", -13398);
		spellPut("shui", -13395);
		spellPut("shun", -13391);
		spellPut("shuo", -13387);
		spellPut("si", -13383);
		spellPut("song", -13367);
		spellPut("sou", -13359);
		spellPut("su", -13356);
		spellPut("suan", -13343);
		spellPut("sui", -13340);
		spellPut("sun", -13329);
		spellPut("suo", -13326);
		spellPut("ta", -13318);
		spellPut("tai", -13147);
		spellPut("tan", -13138);
		spellPut("tang", -13120);
		spellPut("tao", -13107);
		spellPut("te", -13096);
		spellPut("teng", -13095);
		spellPut("ti", -13091);
		spellPut("tian", -13076);
		spellPut("tiao", -13068);
		spellPut("tie", -13063);
		spellPut("ting", -13060);
		spellPut("tong", -12888);
		spellPut("tou", -12875);
		spellPut("tu", -12871);
		spellPut("tuan", -12860);
		spellPut("tui", -12858);
		spellPut("tun", -12852);
		spellPut("tuo", -12849);
		spellPut("wa", -12838);
		spellPut("wai", -12831);
		spellPut("wan", -12829);
		spellPut("wang", -12812);
		spellPut("wei", -12802);
		spellPut("wen", -12607);
		spellPut("weng", -12597);
		spellPut("wo", -12594);
		spellPut("wu", -12585);
		spellPut("xi", -12556);
		spellPut("xia", -12359);
		spellPut("xian", -12346);
		spellPut("xiang", -12320);
		spellPut("xiao", -12300);
		spellPut("xie", -12120);
		spellPut("xin", -12099);
		spellPut("xing", -12089);
		spellPut("xiong", -12074);
		spellPut("xiu", -12067);
		spellPut("xu", -12058);
		spellPut("xuan", -12039);
		spellPut("xue", -11867);
		spellPut("xun", -11861);
		spellPut("ya", -11847);
		spellPut("yan", -11831);
		spellPut("yang", -11798);
		spellPut("yao", -11781);
		spellPut("ye", -11604);
		spellPut("yi", -11589);
		spellPut("yin", -11536);
		spellPut("ying", -11358);
		spellPut("yo", -11340);
		spellPut("yong", -11339);
		spellPut("you", -11324);
		spellPut("yu", -11303);
		spellPut("yuan", -11097);
		spellPut("yue", -11077);
		spellPut("yun", -11067);
		spellPut("za", -11055);
		spellPut("zai", -11052);
		spellPut("zan", -11045);
		spellPut("zang", -11041);
		spellPut("zao", -11038);
		spellPut("ze", -11024);
		spellPut("zei", -11020);
		spellPut("zen", -11019);
		spellPut("zeng", -11018);
		spellPut("zha", -11014);
		spellPut("zhai", -10838);
		spellPut("zhan", -10832);
		spellPut("zhang", -10815);
		spellPut("zhao", -10800);
		spellPut("zhe", -10790);
		spellPut("zhen", -10780);
		spellPut("zheng", -10764);
		spellPut("zhi", -10587);
		spellPut("zhong", -10544);
		spellPut("zhou", -10533);
		spellPut("zhu", -10519);
		spellPut("zhua", -10331);
		spellPut("zhuai", -10329);
		spellPut("zhuan", -10328);
		spellPut("zhuang", -10322);
		spellPut("zhui", -10315);
		spellPut("zhun", -10309);
		spellPut("zhuo", -10307);
		spellPut("zi", -10296);
		spellPut("zong", -10281);
		spellPut("zou", -10274);
		spellPut("zu", -10270);
		spellPut("zuan", -10262);
		spellPut("zui", -10260);
		spellPut("zun", -10256);
		spellPut("zuo", -10254);

		spellPut("chu", -10079);
		spellPut("ji", -10078);
		spellPut("wu", -10077);
		spellPut("gai", -10076);
		spellPut("nian", -10075);
		spellPut("sa", -10074);
		spellPut("pi", -10073);
		spellPut("gen", -10072);
		spellPut("cheng", -10071);
		spellPut("ge", -10070);
		spellPut("nao", -10069);
		spellPut("e", -10068);
		spellPut("yu", -10066);
		spellPut("bi", -10064);
		spellPut("tuo", -10063);
		spellPut("yao", -10062);
		spellPut("yao", -10061);
		spellPut("zhi", -10060);
		spellPut("di", -10059);
		spellPut("xin", -10058);
		spellPut("yin", -10057);
		spellPut("kui", -10056);
		spellPut("yu", -10055);
		spellPut("gao", -10054);
		spellPut("tao", -10053);
		spellPut("ji", -10051);
		spellPut("nai", -10050);
		spellPut("mie", -10049);
		spellPut("ji", -10048);
		spellPut("qi", -10047);
		spellPut("mi", -10046);
		spellPut("bei", -10045);
		spellPut("se", -10044);
		spellPut("gu", -10043);
		spellPut("ze", -10042);
		spellPut("she", -10041);
		spellPut("cuo", -10040);
		spellPut("yan", -10039);
		spellPut("jue", -10038);
		spellPut("si", -10037);
		spellPut("ye", -10036);
		spellPut("yan", -10035);
		spellPut("po", -10033);
		spellPut("gui", -10032);
		spellPut("kui", -10031);
		spellPut("bian", -10030);
		spellPut("ze", -10029);
		spellPut("you", -10027);
		spellPut("yi", -10025);
		spellPut("wen", -10024);
		spellPut("jing", -10023);
		spellPut("ku", -10022);
		spellPut("gui", -10021);
		spellPut("kai", -10020);
		spellPut("la", -10019);
		spellPut("ji", -10018);
		spellPut("yan", -10017);
		spellPut("wan", -10016);
		spellPut("kuai", -10015);
		spellPut("piao", -10014);
		spellPut("jue", -10013);
		spellPut("qiao", -10012);
		spellPut("huo", -10011);
		spellPut("yi", -10010);
		spellPut("wang", -10008);
		spellPut("diang", -10006);
		spellPut("zhang", -10005);
		spellPut("le", -10004);
		spellPut("sa", -10003);
		spellPut("ge", -10002);
		spellPut("mu", -10001);
		spellPut("ren", -10000);
		spellPut("yu", -9999);
		spellPut("pi", -9998);
		spellPut("ya", -9997);
		spellPut("wa", -9996);
		spellPut("wu", -9995);
		spellPut("chang", -9994);
		spellPut("chen", -9993);
		spellPut("kang", -9992);
		spellPut("zhu", -9991);
		spellPut("ning", -9990);
		spellPut("ka", -9989);
		spellPut("you", -9988);
		spellPut("die", -9987);
		spellPut("gou", -9986);
		spellPut("tong", -9823);
		spellPut("tuo", -9822);
		spellPut("ni", -9821);
		spellPut("ga", -9820);
		spellPut("ji", -9819);
		spellPut("er", -9818);
		spellPut("you", -9817);
		spellPut("kua", -9816);
		spellPut("kan", -9815);
		spellPut("zhu", -9814);
		spellPut("yi", -9813);
		spellPut("tiao", -9812);
		spellPut("chai", -9811);
		spellPut("jiao", -9810);
		spellPut("nong", -9809);
		spellPut("mou", -9808);
		spellPut("chou", -9807);
		spellPut("yan", -9806);
		spellPut("li", -9805);
		spellPut("qiu", -9804);
		spellPut("li", -9803);
		spellPut("yu", -9802);
		spellPut("ping", -9801);
		spellPut("yong", -9800);
		spellPut("qi", -9799);
		spellPut("feng", -9798);
		spellPut("qian", -9797);
		spellPut("ruo", -9796);
		spellPut("pai", -9795);
		spellPut("zhuo", -9794);
		spellPut("shui", -9793);
		spellPut("luo", -9792);
		spellPut("wo", -9791);
		spellPut("bi", -9790);
		spellPut("ti", -9789);
		spellPut("guan", -9788);
		spellPut("kong", -9787);
		spellPut("ju", -9786);
		spellPut("fen", -9785);
		spellPut("yan", -9784);
		spellPut("xie", -9783);
		spellPut("ji", -9782);
		spellPut("wei", -9781);
		spellPut("zong", -9780);
		spellPut("lou", -9779);
		spellPut("tang", -9778);
		spellPut("bin", -9777);
		spellPut("nuo", -9776);
		spellPut("chi", -9775);
		spellPut("xi", -9774);
		spellPut("jing", -9773);
		spellPut("jian", -9772);
		spellPut("jiao", -9771);
		spellPut("jiu", -9770);
		spellPut("zhuang", -9769);
		spellPut("xuan", -9768);
		spellPut("dan", -9767);
		spellPut("tong", -9766);
		spellPut("tun", -9765);
		spellPut("she", -9764);
		spellPut("qian", -9763);
		spellPut("zu", -9762);
		spellPut("yue", -9761);
		spellPut("cuan", -9760);
		spellPut("di", -9759);
		spellPut("xi", -9758);
		spellPut("xun", -9757);
		spellPut("hong", -9756);
		spellPut("guo", -9755);
		spellPut("chan", -9754);
		spellPut("kui", -9753);
		spellPut("pu", -9751);
		spellPut("hong", -9750);
		spellPut("fu", -9749);
		spellPut("fu", -9748);
		spellPut("su", -9747);
		spellPut("si", -9746);
		spellPut("yan", -9744);
		spellPut("bo", -9743);
		spellPut("gun", -9742);
		spellPut("mao", -9741);
		spellPut("xie", -9740);
		spellPut("luan", -9739);
		spellPut("pou", -9738);
		spellPut("bing", -9737);
		spellPut("ying", -9736);
		spellPut("luo", -9735);
		spellPut("lei", -9734);
		spellPut("hu", -9732);
		spellPut("mu", -9731);
		spellPut("lie", -9731);
		spellPut("xian", -9730);
		spellPut("dong", -9725);
		spellPut("song", -9567);
		spellPut("zhong", -9565);
		spellPut("ming", -9564);
		spellPut("ji", -9562);
		spellPut("hong", -9561);
		spellPut("shan", -9560);
		spellPut("ou", -9559);
		spellPut("ju", -9558);
		spellPut("ne", -9557);
		spellPut("gu", -9556);
		spellPut("he", -9555);
		spellPut("di", -9554);
		spellPut("zhao", -9553);
		spellPut("qu", -9552);
		spellPut("yi", -9551);
		spellPut("kuang", -9550);
		spellPut("lei", -9549);
		spellPut("guan", -9548);
		spellPut("ji", -9547);
		spellPut("hui", -9546);
		spellPut("shen", -9545);
		spellPut("gou", -9544);
		spellPut("quan", -9543);
		spellPut("zheng", -9542);
		spellPut("hun", -9541);
		spellPut("xu", -9540);
		spellPut("qiao", -9539);
		spellPut("gao", -9538);
		spellPut("kuang", -9537);
		spellPut("ei", -9536);
		spellPut("zou", -9535);
		spellPut("zhuo", -9534);
		spellPut("wei", -9533);
		spellPut("yu", -9532);
		spellPut("shen", -9531);
		spellPut("chan", -9530);
		spellPut("sui", -9529);
		spellPut("chen", -9528);
		spellPut("jian", -9527);
		spellPut("xue", -9526);
		spellPut("ye", -9525);
		spellPut("e", -9524);
		spellPut("yu", -9523);
		spellPut("xuan", -9522);
		spellPut("an", -9521);
		spellPut("di", -9520);
		spellPut("zi", -9519);
		spellPut("pian", -9518);
		spellPut("mo", -9517);
		spellPut("dang", -9516);
		spellPut("su", -9515);
		spellPut("shi", -9514);
		spellPut("mi", -9513);
		spellPut("zhe", -9512);
		spellPut("jian", -9511);
		spellPut("zen", -9510);
		spellPut("qiao", -9509);
		spellPut("jue", -9508);
		spellPut("yan", -9507);
		spellPut("zhan", -9506);
		spellPut("chan", -9505);
		spellPut("jin", -9503);
		spellPut("wu", -9501);
		spellPut("qian", -9500);
		spellPut("jing", -9499);
		spellPut("ban", -9498);
		spellPut("dian", -9497);
		spellPut("zuo", -9496);
		spellPut("bei", -9495);
		spellPut("xing", -9494);
		spellPut("gai", -9493);
		spellPut("zhi", -9492);
		spellPut("nie", -9491);
		spellPut("zou", -9490);
		spellPut("chui", -9489);
		spellPut("pi", -9488);
		spellPut("wei", -9487);
		spellPut("huang", -9486);
		spellPut("kui", -9485);
		spellPut("xi", -9484);
		spellPut("han", -9483);
		spellPut("qiong", -9482);
		spellPut("kuang", -9481);
		spellPut("mang", -9480);
		spellPut("wu", -9479);
		spellPut("fang", -9478);
		spellPut("bing", -9477);
		spellPut("pi", -9476);
		spellPut("bei", -9475);
		spellPut("ye", -9474);
		spellPut("di", -9311);
		spellPut("tai", -9310);
		spellPut("jia", -9309);
		spellPut("zhi", -9308);
		spellPut("zhu", -9307);
		spellPut("kuai", -9306);
		spellPut("qie", -9305);
		spellPut("huan", -9304);
		spellPut("yun", -9303);
		spellPut("li", -9302);
		spellPut("ying", -9301);
		spellPut("gao", -9300);
		spellPut("xi", -9299);
		spellPut("fu", -9298);
		spellPut("pi", -9297);
		spellPut("tan", -9296);
		spellPut("yan", -9295);
		spellPut("juan", -9294);
		spellPut("yan", -9293);
		spellPut("yin", -9292);
		spellPut("zhang", -9291);
		spellPut("po", -9290);
		spellPut("shan", -9289);
		spellPut("zou", -9288);
		spellPut("ling", -9287);
		spellPut("feng", -9286);
		spellPut("chu", -9285);
		spellPut("huan", -9284);
		spellPut("mai", -9283);
		spellPut("qu", -9282);
		spellPut("shao", -9281);
		spellPut("he", -9280);
		spellPut("ge", -9279);
		spellPut("meng", -9278);
		spellPut("xu", -9277);
		spellPut("xie", -9276);
		spellPut("sou", -9275);
		spellPut("xie", -9274);
		spellPut("jue", -9273);
		spellPut("dang", -9270);
		spellPut("chang", -9269);
		spellPut("si", -9268);
		spellPut("bian", -9267);
		spellPut("ben", -9266);
		spellPut("qiu", -9265);
		spellPut("ben", -9264);
		spellPut("e", -9263);
		spellPut("fa", -9262);
		spellPut("shu", -9261);
		spellPut("ji", -9260);
		spellPut("yong", -9259);
		spellPut("he", -9258);
		spellPut("wei", -9257);
		spellPut("wu", -9256);
		spellPut("ge", -9255);
		spellPut("zhen", -9254);
		spellPut("kuang", -9253);
		spellPut("pi", -9252);
		spellPut("yi", -9251);
		spellPut("li", -9250);
		spellPut("qi", -9249);
		spellPut("ban", -9248);
		spellPut("gan", -9247);
		spellPut("long", -9246);
		spellPut("dian", -9245);
		spellPut("lu", -9244);
		spellPut("che", -9243);
		spellPut("chi", -9242);
		spellPut("tuo", -9241);
		spellPut("ni", -9240);
		spellPut("ao", -9238);
		spellPut("ya", -9237);
		spellPut("die", -9236);
		spellPut("kai", -9234);
		spellPut("shan", -9233);
		spellPut("shang", -9232);
		spellPut("nao", -9231);
		spellPut("gai", -9230);
		spellPut("yin", -9229);
		spellPut("cheng", -9228);
		spellPut("shi", -9227);
		spellPut("guo", -9226);
		spellPut("xun", -9225);
		spellPut("lie", -9224);
		spellPut("yuan", -9223);
		spellPut("zhi", -9222);
		spellPut("an", -9221);
		spellPut("yi", -9220);
		spellPut("nian", -9218);
		spellPut("peng", -9055);
		spellPut("tu", -9054);
		spellPut("sao", -9053);
		spellPut("dai", -9052);
		spellPut("ku", -9051);
		spellPut("die", -9050);
		spellPut("yin", -9049);
		spellPut("leng", -9048);
		spellPut("hou", -9047);
		spellPut("ge", -9046);
		spellPut("yuan", -9045);
		spellPut("man", -9044);
		spellPut("yong", -9043);
		spellPut("liang", -9042);
		spellPut("chi", -9041);
		spellPut("xin", -9040);
		spellPut("pi", -9039);
		spellPut("yi", -9038);
		spellPut("jiao", -9036);
		spellPut("nai", -9035);
		spellPut("du", -9034);
		spellPut("qian", -9033);
		spellPut("ji", -9032);
		spellPut("wan", -9031);
		spellPut("xiong", -9030);
		spellPut("qi", -9029);
		spellPut("xiang", -9028);
		spellPut("fu", -9027);
		spellPut("yan", -9026);
		spellPut("yun", -9025);
		spellPut("fei", -9024);
		spellPut("ji", -9023);
		spellPut("li", -9022);
		spellPut("e", -9021);
		spellPut("ju", -9020);
		spellPut("bi", -9019);
		spellPut("zhi", -9018);
		spellPut("rui", -9017);
		spellPut("xian", -9016);
		spellPut("chang", -9015);
		spellPut("cong", -9014);
		spellPut("qin", -9013);
		spellPut("wu", -9012);
		spellPut("qian", -9011);
		spellPut("qi", -9010);
		spellPut("shan", -9009);
		spellPut("bian", -9008);
		spellPut("ning", -9007);
		spellPut("kou", -9006);
		spellPut("yi", -9005);
		spellPut("mo", -9004);
		spellPut("gan", -9003);
		spellPut("pie", -9002);
		spellPut("long", -9001);
		spellPut("ba", -9000);
		spellPut("mu", -8999);
		spellPut("ju", -8998);
		spellPut("ran", -8997);
		spellPut("qing", -8996);
		spellPut("chi", -8995);
		spellPut("fu", -8994);
		spellPut("ling", -8993);
		spellPut("niao", -8992);
		spellPut("yin", -8991);
		spellPut("mao", -8990);
		spellPut("ying", -8989);
		spellPut("qiong", -8988);
		spellPut("min", -8987);
		spellPut("shao", -8986);
		spellPut("qian", -8985);
		spellPut("ti", -8984);
		spellPut("rao", -8983);
		spellPut("bi", -8982);
		spellPut("ci", -8981);
		spellPut("ju", -8980);
		spellPut("tong", -8979);
		spellPut("hui", -8978);
		spellPut("zhu", -8977);
		spellPut("ting", -8976);
		spellPut("qiao", -8975);
		spellPut("fu", -8974);
		spellPut("ren", -8973);
		spellPut("xing", -8972);
		spellPut("quan", -8971);
		spellPut("hui", -8970);
		spellPut("xun", -8969);
		spellPut("ming", -8968);
		spellPut("ji", -8967);
		spellPut("jiao", -8966);
		spellPut("chong", -8965);
		spellPut("jiang", -8964);
		spellPut("luo", -8963);
		spellPut("xing", -8962);
		spellPut("qian", -8799);
		spellPut("gen", -8798);
		spellPut("jin", -8797);
		spellPut("mai", -8796);
		spellPut("sun", -8795);
		spellPut("hong", -8794);
		spellPut("zhou", -8793);
		spellPut("kan", -8792);
		spellPut("bi", -8791);
		spellPut("shi", -8790);
		spellPut("wo", -8789);
		spellPut("you", -8788);
		spellPut("e", -8787);
		spellPut("mei", -8786);
		spellPut("you", -8785);
		spellPut("li", -8784);
		spellPut("tu", -8783);
		spellPut("xian", -8782);
		spellPut("fu", -8781);
		spellPut("sui", -8780);
		spellPut("you", -8779);
		spellPut("di", -8778);
		spellPut("shen", -8777);
		spellPut("guan", -8776);
		spellPut("lang", -8775);
		spellPut("ying", -8774);
		spellPut("chun", -8773);
		spellPut("jing", -8772);
		spellPut("qi", -8771);
		spellPut("xi", -8770);
		spellPut("song", -8769);
		spellPut("jin", -8768);
		spellPut("nai", -8767);
		spellPut("qi", -8766);
		spellPut("ba", -8765);
		spellPut("shu", -8764);
		spellPut("chang", -8763);
		spellPut("tie", -8762);
		spellPut("yu", -8761);
		spellPut("huan", -8760);
		spellPut("bei", -8759);
		spellPut("fu", -8758);
		spellPut("tu", -8757);
		spellPut("dan", -8756);
		spellPut("cui", -8755);
		spellPut("yan", -8754);
		spellPut("zu", -8753);
		spellPut("dang", -8752);
		spellPut("jian", -8751);
		spellPut("wan", -8750);
		spellPut("ying", -8749);
		spellPut("gu", -8748);
		spellPut("han", -8747);
		spellPut("qia", -8746);
		spellPut("feng", -8745);
		spellPut("ren", -8744);
		spellPut("xiang", -8743);
		spellPut("wei", -8742);
		spellPut("chan", -8741);
		spellPut("kai", -8740);
		spellPut("qi", -8739);
		spellPut("kui", -8738);
		spellPut("xi", -8737);
		spellPut("e", -8736);
		spellPut("bao", -8735);
		spellPut("pa", -8734);
		spellPut("ting", -8733);
		spellPut("lou", -8732);
		spellPut("pai", -8731);
		spellPut("xuan", -8730);
		spellPut("jia", -8729);
		spellPut("zhen", -8728);
		spellPut("shi", -8727);
		spellPut("ru", -8726);
		spellPut("mo", -8725);
		spellPut("en", -8724);
		spellPut("bei", -8723);
		spellPut("weng", -8722);
		spellPut("hao", -8721);
		spellPut("ji", -8720);
		spellPut("li", -8719);
		spellPut("bang", -8718);
		spellPut("jian", -8717);
		spellPut("shuo", -8716);
		spellPut("lang", -8715);
		spellPut("ying", -8714);
		spellPut("yu", -8713);
		spellPut("su", -8712);
		spellPut("meng", -8711);
		spellPut("dou", -8710);
		spellPut("xi", -8709);
		spellPut("lian", -8708);
		spellPut("cu", -8707);
		spellPut("lin", -8706);
		spellPut("qu", -8543);
		spellPut("kou", -8542);
		spellPut("xu", -8541);
		spellPut("liao", -8540);
		spellPut("hui", -8539);
		spellPut("xun", -8538);
		spellPut("jue", -8537);
		spellPut("rui", -8536);
		spellPut("zui", -8535);
		spellPut("ji", -8534);
		spellPut("meng", -8533);
		spellPut("fan", -8532);
		spellPut("qi", -8531);
		spellPut("hong", -8530);
		spellPut("xie", -8529);
		spellPut("hong", -8528);
		spellPut("wei", -8527);
		spellPut("yi", -8526);
		spellPut("weng", -8525);
		spellPut("sou", -8524);
		spellPut("bi", -8523);
		spellPut("hao", -8522);
		spellPut("tai", -8521);
		spellPut("ru", -8520);
		spellPut("xun", -8519);
		spellPut("xian", -8518);
		spellPut("gao", -8517);
		spellPut("li", -8516);
		spellPut("huo", -8515);
		spellPut("qu", -8514);
		spellPut("heng", -8513);
		spellPut("fan", -8512);
		spellPut("nie", -8511);
		spellPut("mi", -8510);
		spellPut("mi", -8509);
		spellPut("yi", -8508);
		spellPut("kuang", -8507);
		spellPut("lian", -8506);
		spellPut("da", -8505);
		spellPut("yi", -8504);
		spellPut("xi", -8503);
		spellPut("zang", -8502);
		spellPut("pao", -8501);
		spellPut("wang", -8500);
		spellPut("liao", -8499);
		spellPut("ga", -8498);
		spellPut("gan", -8497);
		spellPut("men", -8495);
		spellPut("tuan", -8494);
		spellPut("chen", -8493);
		spellPut("fu", -8492);
		spellPut("pan", -8491);
		spellPut("ao", -8490);
		spellPut("jie", -8489);
		spellPut("jiao", -8488);
		spellPut("za", -8487);
		spellPut("yi", -8486);
		spellPut("lu", -8485);
		spellPut("jun", -8484);
		spellPut("tian", -8483);
		spellPut("ye", -8482);
		spellPut("ai", -8481);
		spellPut("na", -8480);
		spellPut("ji", -8479);
		spellPut("guai", -8478);
		spellPut("bai", -8477);
		spellPut("ju", -8476);
		spellPut("pou", -8475);
		spellPut("lie", -8474);
		spellPut("qian", -8473);
		spellPut("guan", -8472);
		spellPut("die", -8471);
		spellPut("zha", -8470);
		spellPut("ya", -8469);
		spellPut("qing", -8468);
		spellPut("yu", -8467);
		spellPut("an", -8466);
		spellPut("xuan", -8465);
		spellPut("bing", -8464);
		spellPut("kui", -8463);
		spellPut("yuan", -8462);
		spellPut("shu", -8461);
		spellPut("en", -8460);
		spellPut("chuai", -8459);
		spellPut("jian", -8458);
		spellPut("shuo", -8457);
		spellPut("zhan", -8456);
		spellPut("nuo", -8455);
		spellPut("sang", -8454);
		spellPut("luo", -8453);
		spellPut("ying", -8452);
		spellPut("zhi", -8451);
		spellPut("han", -8450);
		spellPut("zhe", -8287);
		spellPut("xie", -8286);
		spellPut("lu", -8285);
		spellPut("zun", -8284);
		spellPut("cuan", -8283);
		spellPut("gan", -8282);
		spellPut("huan", -8281);
		spellPut("pi", -8280);
		spellPut("xing", -8279);
		spellPut("zhuo", -8278);
		spellPut("huo", -8277);
		spellPut("zuan", -8276);
		spellPut("nang", -8275);
		spellPut("yi", -8274);
		spellPut("te", -8273);
		spellPut("dai", -8272);
		spellPut("shi", -8271);
		spellPut("bu", -8270);
		spellPut("chi", -8269);
		spellPut("ji", -8268);
		spellPut("kou", -8267);
		spellPut("dao", -8266);
		spellPut("le", -8265);
		spellPut("zha", -8264);
		spellPut("a", -8263);
		spellPut("yao", -8262);
		spellPut("fu", -8261);
		spellPut("m", -8260);
		spellPut("yi", -8259);
		spellPut("dai", -8258);
		spellPut("li", -8257);
		spellPut("e", -8256);
		spellPut("bi", -8255);
		spellPut("bai", -8254);
		spellPut("guo", -8253);
		spellPut("qin", -8252);
		spellPut("yin", -8251);
		spellPut("za", -8250);
		spellPut("ka", -8249);
		spellPut("xia", -8248);
		spellPut("gu", -8247);
		spellPut("ling", -8246);
		spellPut("dong", -8245);
		spellPut("ning", -8244);
		spellPut("duo", -8243);
		spellPut("nao", -8242);
		spellPut("you", -8241);
		spellPut("si", -8240);
		spellPut("kuang", -8239);
		spellPut("ji", -8238);
		spellPut("shen", -8237);
		spellPut("hui", -8236);
		spellPut("da", -8235);
		spellPut("lie", -8234);
		spellPut("yi", -8233);
		spellPut("xiao", -8232);
		spellPut("bi", -8231);
		spellPut("ci", -8230);
		spellPut("guang", -8229);
		spellPut("hui", -8228);
		spellPut("xiu", -8227);
		spellPut("yi", -8226);
		spellPut("pai", -8225);
		spellPut("kuai", -8224);
		spellPut("duo", -8223);
		spellPut("ji", -8222);
		spellPut("mie", -8221);
		spellPut("mi", -8220);
		spellPut("zha", -8219);
		spellPut("nong", -8218);
		spellPut("gen", -8217);
		spellPut("mou", -8216);
		spellPut("ma", -8215);
		spellPut("chi", -8214);
		spellPut("lao", -8213);
		spellPut("geng", -8212);
		spellPut("wu", -8211);
		spellPut("zha", -8210);
		spellPut("suo", -8209);
		spellPut("zao", -8208);
		spellPut("xi", -8207);
		spellPut("zuo", -8206);
		spellPut("ji", -8205);
		spellPut("feng", -8204);
		spellPut("ze", -8203);
		spellPut("nuo", -8202);
		spellPut("miao", -8201);
		spellPut("lin", -8200);
		spellPut("zhuan", -8199);
		spellPut("zhao", -8198);
		spellPut("tao", -8197);
		spellPut("hu", -8196);
		spellPut("cui", -8195);
		spellPut("sha", -8194);
		spellPut("yo", -8031);
		spellPut("dan", -8030);
		spellPut("bo", -8029);
		spellPut("diang", -8028);
		spellPut("lang", -8027);
		spellPut("li", -8026);
		spellPut("shua", -8025);
		spellPut("chuai", -8024);
		spellPut("die", -8023);
		spellPut("da", -8022);
		spellPut("nan", -8021);
		spellPut("li", -8020);
		spellPut("kui", -8019);
		spellPut("jie", -8018);
		spellPut("yong", -8017);
		spellPut("kui", -8016);
		spellPut("jiu", -8015);
		spellPut("sou", -8014);
		spellPut("yin", -8013);
		spellPut("chi", -8012);
		spellPut("jie", -8011);
		spellPut("lou", -8010);
		spellPut("ku", -8009);
		spellPut("o", -8008);
		spellPut("hui", -8007);
		spellPut("qin", -8006);
		spellPut("ao", -8005);
		spellPut("su", -8004);
		spellPut("du", -8003);
		spellPut("ke", -8002);
		spellPut("nie", -8001);
		spellPut("he", -8000);
		spellPut("chen", -7999);
		spellPut("suo", -7998);
		spellPut("ge", -7997);
		spellPut("a", -7996);
		spellPut("n", -7995);
		spellPut("hao", -7994);
		spellPut("dia", -7993);
		spellPut("ai", -7992);
		spellPut("ai", -7991);
		spellPut("suo", -7990);
		spellPut("hai", -7989);
		spellPut("tong", -7988);
		spellPut("chi", -7987);
		spellPut("pei", -7986);
		spellPut("lei", -7985);
		spellPut("cao", -7984);
		spellPut("piao", -7983);
		spellPut("qi", -7982);
		spellPut("ying", -7981);
		spellPut("beng", -7980);
		spellPut("sou", -7979);
		spellPut("di", -7978);
		spellPut("mi", -7977);
		spellPut("peng", -7976);
		spellPut("jue", -7975);
		spellPut("liao", -7974);
		spellPut("pu", -7973);
		spellPut("chuai", -7972);
		spellPut("jiao", -7971);
		spellPut("o", -7970);
		spellPut("qin", -7969);
		spellPut("lu", -7968);
		spellPut("ceng", -7967);
		spellPut("deng", -7966);
		spellPut("hao", -7965);
		spellPut("jin", -7964);
		spellPut("jue", -7963);
		spellPut("yi", -7962);
		spellPut("sai", -7961);
		spellPut("pi", -7960);
		spellPut("ru", -7959);
		spellPut("ca", -7958);
		spellPut("huo", -7957);
		spellPut("nang", -7956);
		spellPut("kuang", -7955);
		spellPut("jian", -7954);
		spellPut("nan", -7953);
		spellPut("lun", -7952);
		spellPut("hu", -7951);
		spellPut("ling", -7950);
		spellPut("you", -7949);
		spellPut("yu", -7948);
		spellPut("qing", -7947);
		spellPut("yu", -7946);
		spellPut("huan", -7945);
		spellPut("wei", -7944);
		spellPut("zhi", -7943);
		spellPut("pei", -7942);
		spellPut("tang", -7941);
		spellPut("chou", -7940);
		spellPut("ze", -7939);
		spellPut("guo", -7938);
		spellPut("wei", -7775);
		spellPut("wo", -7774);
		spellPut("man", -7773);
		spellPut("zhang", -7772);
		spellPut("fu", -7771);
		spellPut("fan", -7770);
		spellPut("ji", -7769);
		spellPut("qi", -7768);
		spellPut("qian", -7767);
		spellPut("qi", -7766);
		spellPut("qu", -7765);
		spellPut("ya", -7764);
		spellPut("xian", -7763);
		spellPut("ao", -7762);
		spellPut("cen", -7761);
		spellPut("lan", -7760);
		spellPut("ba", -7759);
		spellPut("hu", -7758);
		spellPut("ke", -7757);
		spellPut("dong", -7756);
		spellPut("jia", -7755);
		spellPut("xiu", -7754);
		spellPut("dai", -7753);
		spellPut("gou", -7752);
		spellPut("mao", -7751);
		spellPut("min", -7750);
		spellPut("yi", -7749);
		spellPut("dong", -7748);
		spellPut("jiao", -7747);
		spellPut("xun", -7746);
		spellPut("zheng", -7745);
		spellPut("lao", -7744);
		spellPut("lai", -7743);
		spellPut("song", -7742);
		spellPut("yan", -7741);
		spellPut("gu", -7740);
		spellPut("xiao", -7739);
		spellPut("guo", -7738);
		spellPut("kong", -7737);
		spellPut("jue", -7736);
		spellPut("rong", -7735);
		spellPut("yao", -7734);
		spellPut("wai", -7733);
		spellPut("zai", -7732);
		spellPut("wei", -7731);
		spellPut("yu", -7730);
		spellPut("cuo", -7729);
		spellPut("lou", -7728);
		spellPut("zi", -7727);
		spellPut("mei", -7726);
		spellPut("sheng", -7725);
		spellPut("song", -7724);
		spellPut("ji", -7723);
		spellPut("zhang", -7722);
		spellPut("lin", -7721);
		spellPut("deng", -7720);
		spellPut("bin", -7719);
		spellPut("yi", -7718);
		spellPut("dian", -7717);
		spellPut("chi", -7716);
		spellPut("fang", -7715);
		spellPut("cu", -7714);
		spellPut("xun", -7713);
		spellPut("yang", -7712);
		spellPut("hou", -7711);
		spellPut("lai", -7710);
		spellPut("xi", -7709);
		spellPut("chang", -7708);
		spellPut("huang", -7707);
		spellPut("yao", -7706);
		spellPut("zheng", -7705);
		spellPut("jiao", -7704);
		spellPut("qu", -7703);
		spellPut("qiu", -7700);
		spellPut("an", -7699);
		spellPut("guang", -7698);
		spellPut("ma", -7697);
		spellPut("niu", -7696);
		spellPut("yun", -7695);
		spellPut("xia", -7694);
		spellPut("pao", -7693);
		spellPut("fei", -7692);
		spellPut("rong", -7691);
		spellPut("kuan", -7690);
		spellPut("shou", -7689);
		spellPut("sun", -7688);
		spellPut("bi", -7687);
		spellPut("juan", -7686);
		spellPut("li", -7685);
		spellPut("yu", -7684);
		spellPut("xian", -7683);
		spellPut("yin", -7682);
		spellPut("suan", -7519);
		spellPut("yi", -7518);
		spellPut("guo", -7517);
		spellPut("luo", -7516);
		spellPut("ni", -7515);
		spellPut("she", -7514);
		spellPut("cu", -7513);
		spellPut("mi", -7512);
		spellPut("hu", -7511);
		spellPut("cha", -7510);
		spellPut("wei", -7509);
		spellPut("wei", -7508);
		spellPut("mei", -7507);
		spellPut("nao", -7506);
		spellPut("zhang", -7505);
		spellPut("jing", -7504);
		spellPut("jue", -7503);
		spellPut("liao", -7502);
		spellPut("xie", -7501);
		spellPut("xun", -7500);
		spellPut("huan", -7499);
		spellPut("chuan", -7498);
		spellPut("huo", -7497);
		spellPut("sun", -7496);
		spellPut("yin", -7495);
		spellPut("tang", -7492);
		spellPut("tun", -7491);
		spellPut("xi", -7490);
		spellPut("ren", -7489);
		spellPut("yu", -7488);
		spellPut("chi", -7487);
		spellPut("yi", -7486);
		spellPut("xiang", -7485);
		spellPut("bo", -7484);
		spellPut("yu", -7483);
		spellPut("hun", -7482);
		spellPut("cha", -7481);
		spellPut("sou", -7480);
		spellPut("mo", -7479);
		spellPut("xiu", -7478);
		spellPut("jin", -7477);
		spellPut("san", -7476);
		spellPut("zhuan", -7475);
		spellPut("nang", -7474);
		spellPut("pi", -7473);
		spellPut("wu", -7472);
		spellPut("gui", -7471);
		spellPut("pao", -7470);
		spellPut("xiu", -7469);
		spellPut("xiang", -7468);
		spellPut("tuo", -7467);
		spellPut("an", -7466);
		spellPut("yu", -7465);
		spellPut("bi", -7464);
		spellPut("geng", -7463);
		spellPut("ao", -7462);
		spellPut("jin", -7461);
		spellPut("chan", -7460);
		spellPut("xie", -7459);
		spellPut("lin", -7458);
		spellPut("ying", -7457);
		spellPut("dao", -7455);
		spellPut("cun", -7454);
		spellPut("chan", -7453);
		spellPut("wu", -7452);
		spellPut("zhi", -7451);
		spellPut("ou", -7450);
		spellPut("chong", -7449);
		spellPut("wu", -7448);
		spellPut("kai", -7447);
		spellPut("chang", -7446);
		spellPut("chuang", -7445);
		spellPut("song", -7444);
		spellPut("bian", -7443);
		spellPut("niu", -7442);
		spellPut("hu", -7441);
		spellPut("chu", -7440);
		spellPut("peng", -7439);
		spellPut("da", -7438);
		spellPut("yang", -7437);
		spellPut("zuo", -7436);
		spellPut("ni", -7435);
		spellPut("fu", -7434);
		spellPut("chao", -7433);
		spellPut("yi", -7432);
		spellPut("yi", -7431);
		spellPut("tong", -7430);
		spellPut("yan", -7429);
		spellPut("ce", -7428);
		spellPut("kai", -7427);
		spellPut("xun", -7426);
		spellPut("ke", -7263);
		spellPut("yun", -7262);
		spellPut("bei", -7261);
		spellPut("song", -7260);
		spellPut("qian", -7259);
		spellPut("kui", -7258);
		spellPut("kun", -7257);
		spellPut("yi", -7256);
		spellPut("ti", -7255);
		spellPut("quan", -7254);
		spellPut("qie", -7253);
		spellPut("xing", -7252);
		spellPut("fei", -7251);
		spellPut("chang", -7250);
		spellPut("wang", -7249);
		spellPut("chou", -7248);
		spellPut("hu", -7247);
		spellPut("cui", -7246);
		spellPut("yun", -7245);
		spellPut("kui", -7244);
		spellPut("e", -7243);
		spellPut("leng", -7242);
		spellPut("zhui", -7241);
		spellPut("qiao", -7240);
		spellPut("bi", -7239);
		spellPut("su", -7238);
		spellPut("qian", -7237);
		spellPut("yong", -7236);
		spellPut("jing", -7235);
		spellPut("qiao", -7234);
		spellPut("chong", -7233);
		spellPut("chu", -7232);
		spellPut("lin", -7231);
		spellPut("meng", -7230);
		spellPut("tian", -7229);
		spellPut("hui", -7228);
		spellPut("shuan", -7227);
		spellPut("yan", -7226);
		spellPut("hong", -7224);
		spellPut("min", -7223);
		spellPut("kang", -7222);
		spellPut("ta", -7221);
		spellPut("lu", -7220);
		spellPut("kun", -7219);
		spellPut("jiu", -7218);
		spellPut("lang", -7217);
		spellPut("yu", -7216);
		spellPut("chang", -7215);
		spellPut("xi", -7214);
		spellPut("wen", -7213);
		spellPut("hun", -7212);
		spellPut("e", -7211);
		spellPut("qu", -7210);
		spellPut("que", -7209);
		spellPut("he", -7208);
		spellPut("tian", -7207);
		spellPut("que", -7206);
		spellPut("han", -7205);
		spellPut("pan", -7203);
		spellPut("qiang", -7202);
		spellPut("qi", -7200);
		spellPut("si", -7199);
		spellPut("cha", -7198);
		spellPut("feng", -7197);
		spellPut("yuan", -7196);
		spellPut("mu", -7195);
		spellPut("mian", -7194);
		spellPut("dun", -7193);
		spellPut("mi", -7192);
		spellPut("gu", -7191);
		spellPut("bian", -7190);
		spellPut("wen", -7189);
		spellPut("hang", -7188);
		spellPut("wei", -7187);
		spellPut("le", -7186);
		spellPut("gan", -7185);
		spellPut("shu", -7184);
		spellPut("long", -7183);
		spellPut("lu", -7182);
		spellPut("yang", -7181);
		spellPut("si", -7180);
		spellPut("duo", -7179);
		spellPut("ling", -7178);
		spellPut("mao", -7177);
		spellPut("luo", -7176);
		spellPut("xuan", -7175);
		spellPut("pan", -7174);
		spellPut("tuo", -7173);
		spellPut("hong", -7172);
		spellPut("min", -7171);
		spellPut("jing", -7170);
		spellPut("huan", -7007);
		spellPut("wei", -7006);
		spellPut("lie", -7005);
		spellPut("jia", -7004);
		spellPut("zhen", -7003);
		spellPut("yin", -7002);
		spellPut("hui", -7001);
		spellPut("zhu", -7000);
		spellPut("ji", -6999);
		spellPut("xu", -6998);
		spellPut("hui", -6997);
		spellPut("tao", -6996);
		spellPut("xun", -6995);
		spellPut("jiang", -6994);
		spellPut("liu", -6993);
		spellPut("hu", -6992);
		spellPut("xun", -6991);
		spellPut("ru", -6990);
		spellPut("su", -6989);
		spellPut("wu", -6988);
		spellPut("lai", -6987);
		spellPut("wei", -6986);
		spellPut("zhuo", -6985);
		spellPut("juan", -6984);
		spellPut("cen", -6983);
		spellPut("bang", -6982);
		spellPut("xi", -6981);
		spellPut("mei", -6980);
		spellPut("huan", -6979);
		spellPut("zhu", -6978);
		spellPut("qi", -6977);
		spellPut("xi", -6976);
		spellPut("song", -6975);
		spellPut("du", -6974);
		spellPut("zhuo", -6973);
		spellPut("pi", -6972);
		spellPut("mian", -6971);
		spellPut("gan", -6970);
		spellPut("fei", -6969);
		spellPut("cong", -6968);
		spellPut("shen", -6967);
		spellPut("guan", -6966);
		spellPut("lu", -6965);
		spellPut("shuan", -6964);
		spellPut("xie", -6963);
		spellPut("mian", -6961);
		spellPut("mian", -6961);
		spellPut("yan", -6960);
		spellPut("jiao", -6960);
		spellPut("sou", -6959);
		spellPut("huang", -6958);
		spellPut("xu", -6957);
		spellPut("pen", -6956);
		spellPut("jian", -6955);
		spellPut("xuan", -6954);
		spellPut("wo", -6953);
		spellPut("mei", -6952);
		spellPut("yan", -6951);
		spellPut("qin", -6950);
		spellPut("ke", -6949);
		spellPut("she", -6948);
		spellPut("mang", -6947);
		spellPut("ying", -6946);
		spellPut("pu", -6945);
		spellPut("li", -6944);
		spellPut("ru", -6943);
		spellPut("ta", -6942);
		spellPut("hun", -6941);
		spellPut("bi", -6940);
		spellPut("xiu", -6939);
		spellPut("fu", -6938);
		spellPut("tang", -6937);
		spellPut("pang", -6936);
		spellPut("ming", -6935);
		spellPut("huang", -6934);
		spellPut("ying", -6933);
		spellPut("xiao", -6932);
		spellPut("lan", -6931);
		spellPut("cao", -6930);
		spellPut("hu", -6929);
		spellPut("luo", -6928);
		spellPut("huan", -6927);
		spellPut("lian", -6926);
		spellPut("zhu", -6925);
		spellPut("yi", -6924);
		spellPut("lu", -6923);
		spellPut("xuan", -6922);
		spellPut("gan", -6921);
		spellPut("shu", -6920);
		spellPut("si", -6919);
		spellPut("shan", -6918);
		spellPut("shao", -6917);
		spellPut("tong", -6916);
		spellPut("chan", -6915);
		spellPut("lai", -6914);
		spellPut("sui", -6751);
		spellPut("li", -6750);
		spellPut("dan", -6749);
		spellPut("chan", -6748);
		spellPut("lian", -6747);
		spellPut("ru", -6746);
		spellPut("pu", -6745);
		spellPut("bi", -6744);
		spellPut("hao", -6743);
		spellPut("zhuo", -6742);
		spellPut("han", -6741);
		spellPut("xie", -6740);
		spellPut("ying", -6739);
		spellPut("yue", -6738);
		spellPut("fen", -6737);
		spellPut("hao", -6736);
		spellPut("ba", -6735);
		spellPut("gui", -6733);
		spellPut("dang", -6732);
		spellPut("mi", -6731);
		spellPut("you", -6730);
		spellPut("chen", -6729);
		spellPut("ning", -6728);
		spellPut("qian", -6727);
		spellPut("qian", -6726);
		spellPut("wu", -6725);
		spellPut("liao", -6724);
		spellPut("qian", -6723);
		spellPut("huan", -6722);
		spellPut("jian", -6721);
		spellPut("jian", -6720);
		spellPut("ya", -6718);
		spellPut("wu", -6717);
		spellPut("jiong", -6716);
		spellPut("ze", -6715);
		spellPut("yi", -6714);
		spellPut("er", -6713);
		spellPut("jia", -6712);
		spellPut("jing", -6711);
		spellPut("dai", -6710);
		spellPut("hou", -6709);
		spellPut("pang", -6708);
		spellPut("bu", -6707);
		spellPut("li", -6706);
		spellPut("qiu", -6705);
		spellPut("xiao", -6704);
		spellPut("ti", -6703);
		spellPut("qun", -6702);
		spellPut("kui", -6701);
		spellPut("wei", -6700);
		spellPut("huan", -6699);
		spellPut("lu", -6698);
		spellPut("chuan", -6697);
		spellPut("huang", -6696);
		spellPut("qiu", -6695);
		spellPut("xia", -6694);
		spellPut("ao", -6693);
		spellPut("gou", -6692);
		spellPut("ta", -6691);
		spellPut("liu", -6690);
		spellPut("xian", -6689);
		spellPut("lin", -6688);
		spellPut("ju", -6687);
		spellPut("xie", -6686);
		spellPut("miao", -6685);
		spellPut("sui", -6684);
		spellPut("la", -6683);
		spellPut("hui", -6681);
		spellPut("tuan", -6680);
		spellPut("zhi", -6679);
		spellPut("kao", -6678);
		spellPut("zhi", -6677);
		spellPut("ji", -6676);
		spellPut("e", -6675);
		spellPut("can", -6674);
		spellPut("xi", -6673);
		spellPut("ju", -6672);
		spellPut("chan", -6671);
		spellPut("jing", -6670);
		spellPut("nu", -6669);
		spellPut("mi", -6668);
		spellPut("fu", -6667);
		spellPut("bi", -6666);
		spellPut("yu", -6665);
		spellPut("shuo", -6663);
		spellPut("fei", -6662);
		spellPut("yan", -6661);
		spellPut("wu", -6660);
		spellPut("yu", -6659);
		spellPut("bi", -6658);
		spellPut("jin", -6495);
		spellPut("zi", -6494);
		spellPut("gui", -6493);
		spellPut("niu", -6492);
		spellPut("yu", -6491);
		spellPut("si", -6490);
		spellPut("da", -6489);
		spellPut("zhou", -6488);
		spellPut("shan", -6487);
		spellPut("qie", -6486);
		spellPut("ya", -6485);
		spellPut("rao", -6484);
		spellPut("shu", -6483);
		spellPut("luan", -6482);
		spellPut("jiao", -6481);
		spellPut("pin", -6480);
		spellPut("cha", -6479);
		spellPut("li", -6478);
		spellPut("ping", -6477);
		spellPut("wa", -6476);
		spellPut("xian", -6475);
		spellPut("suo", -6474);
		spellPut("di", -6473);
		spellPut("wei", -6472);
		spellPut("e", -6471);
		spellPut("jing", -6470);
		spellPut("biao", -6469);
		spellPut("jie", -6468);
		spellPut("chang", -6467);
		spellPut("bi", -6466);
		spellPut("chan", -6465);
		spellPut("nu", -6464);
		spellPut("ao", -6463);
		spellPut("yuan", -6462);
		spellPut("ting", -6461);
		spellPut("wu", -6460);
		spellPut("gou", -6459);
		spellPut("mo", -6458);
		spellPut("pi", -6457);
		spellPut("ai", -6456);
		spellPut("pin", -6455);
		spellPut("chi", -6454);
		spellPut("li", -6453);
		spellPut("yan", -6452);
		spellPut("qiang", -6451);
		spellPut("piao", -6450);
		spellPut("chang", -6449);
		spellPut("lei", -6448);
		spellPut("zhang", -6447);
		spellPut("xi", -6446);
		spellPut("shan", -6445);
		spellPut("bi", -6444);
		spellPut("niao", -6443);
		spellPut("ma", -6442);
		spellPut("shuang", -6441);
		spellPut("ga", -6440);
		spellPut("ga", -6439);
		spellPut("fu", -6438);
		spellPut("nu", -6437);
		spellPut("zi", -6436);
		spellPut("jie", -6435);
		spellPut("jue", -6434);
		spellPut("bao", -6433);
		spellPut("zang", -6432);
		spellPut("si", -6431);
		spellPut("fu", -6430);
		spellPut("zou", -6429);
		spellPut("yi", -6428);
		spellPut("nu", -6427);
		spellPut("dai", -6426);
		spellPut("xiao", -6425);
		spellPut("hua", -6424);
		spellPut("pian", -6423);
		spellPut("li", -6422);
		spellPut("qi", -6421);
		spellPut("ke", -6420);
		spellPut("zhui", -6419);
		spellPut("can", -6418);
		spellPut("zhi", -6417);
		spellPut("wu", -6416);
		spellPut("ao", -6415);
		spellPut("liu", -6414);
		spellPut("shan", -6413);
		spellPut("biao", -6412);
		spellPut("cong", -6411);
		spellPut("chan", -6410);
		spellPut("ji", -6409);
		spellPut("xiang", -6408);
		spellPut("yu", -6406);
		spellPut("zhou", -6405);
		spellPut("ge", -6404);
		spellPut("wan", -6403);
		spellPut("kuang", -6402);
		spellPut("yun", -6239);
		spellPut("pi", -6238);
		spellPut("shu", -6237);
		spellPut("gan", -6236);
		spellPut("xie", -6235);
		spellPut("fu", -6234);
		spellPut("zhou", -6233);
		spellPut("fu", -6232);
		spellPut("chu", -6231);
		spellPut("dai", -6230);
		spellPut("ku", -6229);
		spellPut("hang", -6228);
		spellPut("jiang", -6227);
		spellPut("geng", -6226);
		spellPut("xiao", -6225);
		spellPut("di", -6224);
		spellPut("ling", -6223);
		spellPut("qi", -6222);
		spellPut("fei", -6221);
		spellPut("shang", -6220);
		spellPut("gun", -6219);
		spellPut("chui", -6218);
		spellPut("shou", -6217);
		spellPut("liu", -6216);
		spellPut("quan", -6215);
		spellPut("wan", -6214);
		spellPut("zi", -6213);
		spellPut("ke", -6212);
		spellPut("xiang", -6211);
		spellPut("ti", -6210);
		spellPut("miao", -6209);
		spellPut("hui", -6208);
		spellPut("si", -6207);
		spellPut("bian", -6206);
		spellPut("gou", -6205);
		spellPut("zhui", -6204);
		spellPut("min", -6203);
		spellPut("jin", -6202);
		spellPut("zhen", -6201);
		spellPut("ru", -6200);
		spellPut("gao", -6199);
		spellPut("li", -6198);
		spellPut("yi", -6197);
		spellPut("jian", -6196);
		spellPut("bin", -6195);
		spellPut("piao", -6194);
		spellPut("man", -6193);
		spellPut("lei", -6192);
		spellPut("miao", -6191);
		spellPut("sao", -6190);
		spellPut("xie", -6189);
		spellPut("liao", -6188);
		spellPut("zeng", -6187);
		spellPut("jiang", -6186);
		spellPut("qian", -6185);
		spellPut("qiao", -6184);
		spellPut("huan", -6183);
		spellPut("zuan", -6182);
		spellPut("yao", -6181);
		spellPut("ji", -6180);
		spellPut("chuan", -6179);
		spellPut("zai", -6178);
		spellPut("yong", -6177);
		spellPut("ding", -6176);
		spellPut("ji", -6175);
		spellPut("wei", -6174);
		spellPut("bin", -6173);
		spellPut("min", -6172);
		spellPut("jue", -6171);
		spellPut("ke", -6170);
		spellPut("long", -6169);
		spellPut("dian", -6168);
		spellPut("dai", -6167);
		spellPut("po", -6166);
		spellPut("min", -6165);
		spellPut("jia", -6164);
		spellPut("er", -6163);
		spellPut("gong", -6162);
		spellPut("xu", -6161);
		spellPut("ya", -6160);
		spellPut("hang", -6159);
		spellPut("yao", -6158);
		spellPut("luo", -6157);
		spellPut("xi", -6156);
		spellPut("hui", -6155);
		spellPut("lian", -6154);
		spellPut("qi", -6153);
		spellPut("ying", -6152);
		spellPut("qi", -6151);
		spellPut("hu", -6150);
		spellPut("kun", -6149);
		spellPut("yan", -6148);
		spellPut("cong", -6147);
		spellPut("wan", -6146);
		spellPut("chen", -5983);
		spellPut("ju", -5982);
		spellPut("mao", -5981);
		spellPut("yu", -5980);
		spellPut("yuan", -5979);
		spellPut("xia", -5978);
		spellPut("nao", -5977);
		spellPut("ai", -5976);
		spellPut("tang", -5975);
		spellPut("jin", -5974);
		spellPut("huang", -5973);
		spellPut("ying", -5972);
		spellPut("cui", -5971);
		spellPut("cong", -5970);
		spellPut("xuan", -5969);
		spellPut("zhang", -5968);
		spellPut("pu", -5967);
		spellPut("can", -5966);
		spellPut("qu", -5965);
		spellPut("lu", -5964);
		spellPut("bi", -5963);
		spellPut("zan", -5962);
		spellPut("wen", -5961);
		spellPut("wei", -5960);
		spellPut("yun", -5959);
		spellPut("tao", -5958);
		spellPut("wu", -5957);
		spellPut("biao", -5956);
		spellPut("qi", -5955);
		spellPut("cha", -5954);
		spellPut("ma", -5953);
		spellPut("li", -5952);
		spellPut("pi", -5951);
		spellPut("miao", -5950);
		spellPut("yao", -5949);
		spellPut("rui", -5948);
		spellPut("jian", -5947);
		spellPut("chu", -5946);
		spellPut("cheng", -5945);
		spellPut("cong", -5944);
		spellPut("xiao", -5943);
		spellPut("fang", -5942);
		spellPut("pa", -5941);
		spellPut("zhu", -5940);
		spellPut("nai", -5939);
		spellPut("zhi", -5938);
		spellPut("zhe", -5937);
		spellPut("long", -5936);
		spellPut("jiu", -5935);
		spellPut("ping", -5934);
		spellPut("lu", -5933);
		spellPut("xia", -5932);
		spellPut("xiao", -5931);
		spellPut("you", -5930);
		spellPut("zhi", -5929);
		spellPut("tuo", -5928);
		spellPut("zhi", -5927);
		spellPut("ling", -5926);
		spellPut("gou", -5925);
		spellPut("di", -5924);
		spellPut("li", -5923);
		spellPut("duo", -5922);
		spellPut("cheng", -5921);
		spellPut("kao", -5920);
		spellPut("lao", -5919);
		spellPut("ya", -5918);
		spellPut("rao", -5917);
		spellPut("zhi", -5916);
		spellPut("zhen", -5915);
		spellPut("guang", -5914);
		spellPut("qi", -5913);
		spellPut("ting", -5912);
		spellPut("gua", -5911);
		spellPut("jiu", -5910);
		spellPut("hua", -5909);
		spellPut("heng", -5908);
		spellPut("gui", -5907);
		spellPut("jie", -5906);
		spellPut("luan", -5905);
		spellPut("juan", -5904);
		spellPut("an", -5903);
		spellPut("xu", -5902);
		spellPut("fan", -5901);
		spellPut("gu", -5900);
		spellPut("fu", -5899);
		spellPut("jue", -5898);
		spellPut("zi", -5897);
		spellPut("suo", -5896);
		spellPut("ling", -5895);
		spellPut("chu", -5894);
		spellPut("fen", -5893);
		spellPut("du", -5892);
		spellPut("qian", -5891);
		spellPut("zhao", -5890);
		spellPut("luo", -5727);
		spellPut("chui", -5726);
		spellPut("liang", -5725);
		spellPut("guo", -5724);
		spellPut("jian", -5723);
		spellPut("di", -5722);
		spellPut("ju", -5721);
		spellPut("cou", -5720);
		spellPut("shen", -5719);
		spellPut("nan", -5718);
		spellPut("cha", -5717);
		spellPut("lian", -5716);
		spellPut("lan", -5715);
		spellPut("ji", -5714);
		spellPut("pin", -5713);
		spellPut("ju", -5712);
		spellPut("qiu", -5711);
		spellPut("duan", -5710);
		spellPut("chui", -5709);
		spellPut("chen", -5708);
		spellPut("lv", -5707);
		spellPut("cha", -5706);
		spellPut("ju", -5705);
		spellPut("xuan", -5704);
		spellPut("mei", -5703);
		spellPut("ying", -5702);
		spellPut("zhen", -5701);
		spellPut("fei", -5700);
		spellPut("ta", -5699);
		spellPut("sun", -5698);
		spellPut("xie", -5697);
		spellPut("cui", -5695);
		spellPut("shuo", -5693);
		spellPut("bin", -5692);
		spellPut("rong", -5691);
		spellPut("zhu", -5690);
		spellPut("xie", -5689);
		spellPut("jin", -5688);
		spellPut("qiang", -5687);
		spellPut("qi", -5686);
		spellPut("chu", -5685);
		spellPut("tang", -5684);
		spellPut("zhu", -5683);
		spellPut("hu", -5682);
		spellPut("gan", -5681);
		spellPut("yue", -5680);
		spellPut("qing", -5679);
		spellPut("tuo", -5678);
		spellPut("jue", -5677);
		spellPut("qiao", -5676);
		spellPut("qin", -5675);
		spellPut("lu", -5674);
		spellPut("zun", -5673);
		spellPut("xi", -5672);
		spellPut("ju", -5671);
		spellPut("yuan", -5670);
		spellPut("lei", -5669);
		spellPut("yan", -5668);
		spellPut("lin", -5667);
		spellPut("bo", -5666);
		spellPut("cha", -5665);
		spellPut("you", -5664);
		spellPut("ao", -5663);
		spellPut("mo", -5662);
		spellPut("cu", -5661);
		spellPut("shang", -5660);
		spellPut("tian", -5659);
		spellPut("yun", -5658);
		spellPut("lian", -5657);
		spellPut("piao", -5656);
		spellPut("dan", -5655);
		spellPut("ji", -5654);
		spellPut("bin", -5653);
		spellPut("yi", -5652);
		spellPut("ren", -5651);
		spellPut("e", -5650);
		spellPut("gu", -5649);
		spellPut("ke", -5648);
		spellPut("lu", -5647);
		spellPut("zhi", -5646);
		spellPut("yi", -5645);
		spellPut("zhen", -5644);
		spellPut("hu", -5643);
		spellPut("li", -5642);
		spellPut("yao", -5641);
		spellPut("shi", -5640);
		spellPut("zhi", -5639);
		spellPut("quan", -5638);
		spellPut("lu", -5637);
		spellPut("zhe", -5636);
		spellPut("nian", -5635);
		spellPut("wang", -5634);
		spellPut("chuo", -5471);
		spellPut("zi", -5470);
		spellPut("cou", -5469);
		spellPut("lu", -5468);
		spellPut("lin", -5467);
		spellPut("wei", -5466);
		spellPut("jian", -5465);
		spellPut("qiang", -5464);
		spellPut("jia", -5463);
		spellPut("ji", -5462);
		spellPut("ji", -5461);
		spellPut("kan", -5460);
		spellPut("deng", -5459);
		spellPut("gai", -5458);
		spellPut("jian", -5457);
		spellPut("zang", -5456);
		spellPut("ou", -5455);
		spellPut("ling", -5454);
		spellPut("bu", -5453);
		spellPut("beng", -5452);
		spellPut("zeng", -5451);
		spellPut("pi", -5450);
		spellPut("po", -5449);
		spellPut("ga", -5448);
		spellPut("la", -5447);
		spellPut("gan", -5446);
		spellPut("hao", -5445);
		spellPut("tan", -5444);
		spellPut("ze", -5442);
		spellPut("xin", -5441);
		spellPut("yun", -5440);
		spellPut("gui", -5439);
		spellPut("he", -5438);
		spellPut("zan", -5437);
		spellPut("mao", -5436);
		spellPut("yu", -5435);
		spellPut("chang", -5434);
		spellPut("ni", -5433);
		spellPut("qi", -5432);
		spellPut("sheng", -5431);
		spellPut("ye", -5430);
		spellPut("chao", -5429);
		spellPut("yan", -5428);
		spellPut("hui", -5427);
		spellPut("bu", -5426);
		spellPut("han", -5425);
		spellPut("gui", -5424);
		spellPut("xuan", -5423);
		spellPut("kui", -5422);
		spellPut("ai", -5421);
		spellPut("ming", -5420);
		spellPut("tun", -5419);
		spellPut("xun", -5418);
		spellPut("yao", -5417);
		spellPut("xi", -5416);
		spellPut("nang", -5415);
		spellPut("ben", -5414);
		spellPut("shi", -5413);
		spellPut("kuang", -5412);
		spellPut("yi", -5411);
		spellPut("yi", -5411);
		spellPut("zhi", -5410);
		spellPut("zi", -5409);
		spellPut("gai", -5408);
		spellPut("jin", -5407);
		spellPut("zhen", -5406);
		spellPut("lai", -5405);
		spellPut("qiu", -5404);
		spellPut("ji", -5403);
		spellPut("ji", -5403);
		spellPut("dan", -5402);
		spellPut("fu", -5401);
		spellPut("chan", -5400);
		spellPut("ji", -5399);
		spellPut("xi", -5398);
		spellPut("di", -5397);
		spellPut("yu", -5396);
		spellPut("gou", -5395);
		spellPut("jin", -5394);
		spellPut("qu", -5393);
		spellPut("jian", -5392);
		spellPut("jiang", -5391);
		spellPut("pin", -5390);
		spellPut("mao", -5389);
		spellPut("gu", -5388);
		spellPut("wu", -5387);
		spellPut("gu", -5386);
		spellPut("ji", -5385);
		spellPut("ju", -5384);
		spellPut("jian", -5383);
		spellPut("pian", -5382);
		spellPut("kao", -5381);
		spellPut("qie", -5380);
		spellPut("sa", -5379);
		spellPut("bai", -5378);
		spellPut("ge", -5215);
		spellPut("bo", -5214);
		spellPut("mao", -5213);
		spellPut("mu", -5212);
		spellPut("cui", -5211);
		spellPut("jian", -5210);
		spellPut("san", -5209);
		spellPut("shu", -5208);
		spellPut("chang", -5207);
		spellPut("lu", -5206);
		spellPut("pu", -5205);
		spellPut("qu", -5204);
		spellPut("pie", -5203);
		spellPut("dao", -5202);
		spellPut("xian", -5201);
		spellPut("chuan", -5200);
		spellPut("dong", -5199);
		spellPut("ya", -5198);
		spellPut("yin", -5197);
		spellPut("ke", -5196);
		spellPut("yun", -5195);
		spellPut("chi", -5193);
		spellPut("jiao", -5192);
		spellPut("du", -5191);
		spellPut("die", -5190);
		spellPut("you", -5189);
		spellPut("yuan", -5188);
		spellPut("guo", -5187);
		spellPut("yue", -5186);
		spellPut("wo", -5185);
		spellPut("rong", -5184);
		spellPut("huang", -5183);
		spellPut("jing", -5182);
		spellPut("ruan", -5181);
		spellPut("tai", -5180);
		spellPut("gong", -5179);
		spellPut("zhun", -5178);
		spellPut("na", -5177);
		spellPut("yao", -5176);
		spellPut("qian", -5175);
		spellPut("long", -5174);
		spellPut("dong", -5173);
		spellPut("ka", -5172);
		spellPut("lu", -5171);
		spellPut("jia", -5170);
		spellPut("shen", -5169);
		spellPut("zhou", -5168);
		spellPut("zuo", -5167);
		spellPut("gua", -5166);
		spellPut("zhen", -5165);
		spellPut("qu", -5164);
		spellPut("zhi", -5163);
		spellPut("jing", -5162);
		spellPut("guang", -5161);
		spellPut("dong", -5160);
		spellPut("yan", -5159);
		spellPut("kuai", -5158);
		spellPut("sa", -5157);
		spellPut("hai", -5156);
		spellPut("pian", -5155);
		spellPut("zhen", -5154);
		spellPut("mi", -5153);
		spellPut("tun", -5152);
		spellPut("luo", -5151);
		spellPut("cuo", -5150);
		spellPut("pao", -5149);
		spellPut("wan", -5148);
		spellPut("niao", -5147);
		spellPut("jing", -5146);
		spellPut("a", -5145);
		spellPut("fei", -5144);
		spellPut("yu", -5143);
		spellPut("zong", -5142);
		spellPut("ding", -5141);
		spellPut("jian", -5140);
		spellPut("cou", -5139);
		spellPut("nan", -5138);
		spellPut("wa", -5136);
		spellPut("e", -5135);
		spellPut("shu", -5134);
		spellPut("cheng", -5133);
		spellPut("ying", -5132);
		spellPut("ge", -5131);
		spellPut("lv", -5130);
		spellPut("bin", -5129);
		spellPut("teng", -5128);
		spellPut("zhi", -5127);
		spellPut("chuai", -5126);
		spellPut("gu", -5125);
		spellPut("meng", -5124);
		spellPut("sao", -5123);
		spellPut("shan", -5122);
		spellPut("lian", -4959);
		spellPut("lin", -4958);
		spellPut("yu", -4957);
		spellPut("xi", -4956);
		spellPut("qi", -4955);
		spellPut("sha", -4954);
		spellPut("xin", -4953);
		spellPut("she", -4952);
		spellPut("biao", -4951);
		spellPut("sa", -4950);
		spellPut("ju", -4949);
		spellPut("sou", -4948);
		spellPut("biao", -4947);
		spellPut("biao", -4946);
		spellPut("shu", -4945);
		spellPut("gou", -4944);
		spellPut("gu", -4943);
		spellPut("hu", -4942);
		spellPut("fei", -4941);
		spellPut("ji", -4940);
		spellPut("lan", -4939);
		spellPut("wu", -4938);
		spellPut("pei", -4937);
		spellPut("mao", -4936);
		spellPut("zhan", -4935);
		spellPut("jing", -4934);
		spellPut("ni", -4933);
		spellPut("liu", -4932);
		spellPut("yi", -4931);
		spellPut("yang", -4930);
		spellPut("wei", -4929);
		spellPut("dun", -4928);
		spellPut("qiang", -4927);
		spellPut("shi", -4926);
		spellPut("hu", -4925);
		spellPut("zhu", -4924);
		spellPut("xuan", -4923);
		spellPut("tai", -4922);
		spellPut("ye", -4921);
		spellPut("yang", -4920);
		spellPut("wu", -4919);
		spellPut("han", -4918);
		spellPut("men", -4917);
		spellPut("chao", -4916);
		spellPut("yan", -4915);
		spellPut("hu", -4914);
		spellPut("yu", -4913);
		spellPut("wei", -4912);
		spellPut("duan", -4911);
		spellPut("bao", -4910);
		spellPut("xuan", -4909);
		spellPut("bian", -4908);
		spellPut("tui", -4907);
		spellPut("liu", -4906);
		spellPut("man", -4905);
		spellPut("shang", -4904);
		spellPut("yu", -4903);
		spellPut("yi", -4902);
		spellPut("yu", -4901);
		spellPut("fan", -4900);
		spellPut("sui", -4899);
		spellPut("xian", -4898);
		spellPut("jue", -4897);
		spellPut("cuan", -4896);
		spellPut("dao", -4894);
		spellPut("xu", -4893);
		spellPut("xi", -4892);
		spellPut("li", -4891);
		spellPut("hu", -4890);
		spellPut("jiong", -4889);
		spellPut("hu", -4888);
		spellPut("fei", -4887);
		spellPut("si", -4885);
		spellPut("xian", -4884);
		spellPut("zhi", -4883);
		spellPut("qu", -4882);
		spellPut("hu", -4881);
		spellPut("fu", -4880);
		spellPut("zuo", -4879);
		spellPut("mi", -4878);
		spellPut("zhi", -4877);
		spellPut("ci", -4876);
		spellPut("zhen", -4875);
		spellPut("piao", -4874);
		spellPut("qi", -4873);
		spellPut("chan", -4872);
		spellPut("xi", -4871);
		spellPut("zhuo", -4870);
		spellPut("xi", -4869);
		spellPut("rang", -4868);
		spellPut("te", -4867);
		spellPut("tan", -4866);
		spellPut("dui", -4703);
		spellPut("jia", -4702);
		spellPut("hui", -4701);
		spellPut("nv", -4700);
		spellPut("nen", -4699);
		spellPut("yang", -4698);
		spellPut("zi", -4697);
		spellPut("que", -4696);
		spellPut("qian", -4695);
		spellPut("min", -4694);
		spellPut("ni", -4693);
		spellPut("qi", -4692);
		spellPut("dui", -4691);
		spellPut("mao", -4690);
		spellPut("men", -4689);
		spellPut("gang", -4688);
		spellPut("yu", -4686);
		spellPut("da", -4685);
		spellPut("xue", -4684);
		spellPut("miao", -4683);
		spellPut("ji", -4682);
		spellPut("gan", -4681);
		spellPut("dang", -4680);
		spellPut("hua", -4679);
		spellPut("che", -4678);
		spellPut("dun", -4677);
		spellPut("ya", -4676);
		spellPut("zhuo", -4675);
		spellPut("bian", -4674);
		spellPut("fa", -4672);
		spellPut("ai", -4671);
		spellPut("li", -4670);
		spellPut("long", -4669);
		spellPut("zha", -4668);
		spellPut("tong", -4667);
		spellPut("di", -4666);
		spellPut("la", -4665);
		spellPut("tuo", -4664);
		spellPut("fu", -4663);
		spellPut("xing", -4662);
		spellPut("mang", -4661);
		spellPut("xia", -4660);
		spellPut("qiao", -4659);
		spellPut("zhai", -4658);
		spellPut("dong", -4657);
		spellPut("nao", -4656);
		spellPut("ge", -4655);
		spellPut("wo", -4654);
		spellPut("qi", -4653);
		spellPut("dui", -4652);
		spellPut("bei", -4651);
		spellPut("ding", -4650);
		spellPut("chen", -4649);
		spellPut("zhou", -4648);
		spellPut("jie", -4647);
		spellPut("di", -4646);
		spellPut("xuan", -4645);
		spellPut("bian", -4644);
		spellPut("zhe", -4643);
		spellPut("gun", -4642);
		spellPut("sang", -4641);
		spellPut("qing", -4640);
		spellPut("qu", -4639);
		spellPut("dun", -4638);
		spellPut("deng", -4637);
		spellPut("jiang", -4636);
		spellPut("ca", -4635);
		spellPut("meng", -4634);
		spellPut("bo", -4633);
		spellPut("kan", -4632);
		spellPut("zhi", -4631);
		spellPut("fu", -4630);
		spellPut("fu", -4629);
		spellPut("mian", -4627);
		spellPut("kou", -4626);
		spellPut("dun", -4625);
		spellPut("miao", -4624);
		spellPut("dan", -4623);
		spellPut("sheng", -4622);
		spellPut("yuan", -4621);
		spellPut("chi", -4620);
		spellPut("sui", -4619);
		spellPut("zi", -4618);
		spellPut("chi", -4617);
		spellPut("mou", -4616);
		spellPut("lai", -4615);
		spellPut("jian", -4614);
		spellPut("di", -4613);
		spellPut("suo", -4612);
		spellPut("ya", -4611);
		spellPut("ni", -4610);
		spellPut("sui", -4447);
		spellPut("bi", -4446);
		spellPut("rui", -4445);
		spellPut("sou", -4444);
		spellPut("kui", -4443);
		spellPut("mao", -4442);
		spellPut("ke", -4441);
		spellPut("ming", -4440);
		spellPut("piao", -4439);
		spellPut("cheng", -4438);
		spellPut("kan", -4437);
		spellPut("lin", -4436);
		spellPut("gu", -4435);
		spellPut("ding", -4434);
		spellPut("bi", -4433);
		spellPut("quan", -4432);
		spellPut("tian", -4431);
		spellPut("fan", -4430);
		spellPut("zhen", -4429);
		spellPut("she", -4428);
		spellPut("wan", -4427);
		spellPut("tuan", -4426);
		spellPut("fu", -4425);
		spellPut("gang", -4424);
		spellPut("gu", -4423);
		spellPut("li", -4422);
		spellPut("yan", -4421);
		spellPut("pi", -4420);
		spellPut("lan", -4419);
		spellPut("li", -4418);
		spellPut("ji", -4417);
		spellPut("zeng", -4416);
		spellPut("he", -4415);
		spellPut("guan", -4414);
		spellPut("juan", -4413);
		spellPut("ga", -4411);
		spellPut("yi", -4410);
		spellPut("po", -4409);
		spellPut("zhao", -4408);
		spellPut("liao", -4407);
		spellPut("tu", -4406);
		spellPut("chuan", -4405);
		spellPut("shan", -4404);
		spellPut("men", -4403);
		spellPut("chai", -4402);
		spellPut("nu", -4401);
		spellPut("bu", -4400);
		spellPut("tai", -4399);
		spellPut("ju", -4398);
		spellPut("ban", -4397);
		spellPut("qian", -4396);
		spellPut("fang", -4395);
		spellPut("kang", -4394);
		spellPut("tou", -4393);
		spellPut("huo", -4392);
		spellPut("ba", -4391);
		spellPut("yu", -4390);
		spellPut("yu", -4390);
		spellPut("zheng", -4389);
		spellPut("gu", -4388);
		spellPut("ke", -4387);
		spellPut("po", -4386);
		spellPut("bu", -4385);
		spellPut("bo", -4384);
		spellPut("yue", -4383);
		spellPut("mu", -4382);
		spellPut("tan", -4381);
		spellPut("dian", -4380);
		spellPut("shuo", -4379);
		spellPut("shi", -4378);
		spellPut("xuan", -4377);
		spellPut("ta", -4376);
		spellPut("bi", -4375);
		spellPut("ni", -4374);
		spellPut("pi", -4373);
		spellPut("duo", -4372);
		spellPut("kao", -4371);
		spellPut("lao", -4370);
		spellPut("er", -4369);
		spellPut("you", -4368);
		spellPut("cheng", -4367);
		spellPut("jia", -4366);
		spellPut("nao", -4365);
		spellPut("ye", -4364);
		spellPut("cheng", -4363);
		spellPut("diao", -4362);
		spellPut("yin", -4361);
		spellPut("kai", -4360);
		spellPut("zhu", -4359);
		spellPut("ding", -4358);
		spellPut("diu", -4357);
		spellPut("hua", -4356);
		spellPut("quan", -4355);
		spellPut("ha", -4354);
		spellPut("sha", -4191);
		spellPut("diao", -4190);
		spellPut("zheng", -4189);
		spellPut("se", -4188);
		spellPut("chong", -4187);
		spellPut("tang", -4186);
		spellPut("an", -4185);
		spellPut("ru", -4184);
		spellPut("lao", -4183);
		spellPut("lai", -4182);
		spellPut("te", -4181);
		spellPut("keng", -4180);
		spellPut("zeng", -4179);
		spellPut("li", -4178);
		spellPut("e", -4176);
		spellPut("cuo", -4175);
		spellPut("lue", -4174);
		spellPut("liu", -4173);
		spellPut("kai", -4172);
		spellPut("jian", -4171);
		spellPut("lang", -4170);
		spellPut("qin", -4169);
		spellPut("ju", -4168);
		spellPut("a", -4167);
		spellPut("qiang", -4166);
		spellPut("nuo", -4165);
		spellPut("ben", -4164);
		spellPut("de", -4163);
		spellPut("ke", -4162);
		spellPut("kun", -4161);
		spellPut("gu", -4160);
		spellPut("huo", -4159);
		spellPut("pei", -4158);
		spellPut("juan", -4157);
		spellPut("tan", -4156);
		spellPut("zi", -4155);
		spellPut("qie", -4154);
		spellPut("kai", -4153);
		spellPut("si", -4152);
		spellPut("e", -4151);
		spellPut("cha", -4150);
		spellPut("sou", -4149);
		spellPut("huan", -4148);
		spellPut("ai", -4147);
		spellPut("lou", -4146);
		spellPut("qiang", -4145);
		spellPut("fei", -4144);
		spellPut("mei", -4143);
		spellPut("mo", -4142);
		spellPut("ge", -4141);
		spellPut("juan", -4140);
		spellPut("na", -4139);
		spellPut("liu", -4138);
		spellPut("yi", -4137);
		spellPut("jia", -4136);
		spellPut("bin", -4135);
		spellPut("biao", -4134);
		spellPut("tang", -4133);
		spellPut("man", -4132);
		spellPut("luo", -4131);
		spellPut("yong", -4130);
		spellPut("zu", -4129);
		spellPut("xuan", -4128);
		spellPut("di", -4127);
		spellPut("chan", -4126);
		spellPut("jue", -4125);
		spellPut("pu", -4124);
		spellPut("lu", -4123);
		spellPut("dui", -4122);
		spellPut("lan", -4121);
		spellPut("pu", -4120);
		spellPut("cuan", -4119);
		spellPut("qiang", -4118);
		spellPut("deng", -4117);
		spellPut("huo", -4116);
		spellPut("zhuo", -4115);
		spellPut("yi", -4114);
		spellPut("cha", -4113);
		spellPut("biao", -4112);
		spellPut("zhong", -4111);
		spellPut("shen", -4110);
		spellPut("cuo", -4109);
		spellPut("zhi", -4108);
		spellPut("bi", -4107);
		spellPut("zi", -4106);
		spellPut("mo", -4105);
		spellPut("shu", -4104);
		spellPut("lv", -4103);
		spellPut("ji", -4102);
		spellPut("fu", -4101);
		spellPut("lang", -4100);
		spellPut("ke", -4099);
		spellPut("ren", -4098);
		spellPut("zhen", -3935);
		spellPut("ji", -3934);
		spellPut("se", -3933);
		spellPut("nian", -3932);
		spellPut("fu", -3931);
		spellPut("rang", -3930);
		spellPut("gui", -3929);
		spellPut("jiao", -3928);
		spellPut("hao", -3927);
		spellPut("xi", -3926);
		spellPut("po", -3925);
		spellPut("die", -3924);
		spellPut("hu", -3923);
		spellPut("yong", -3922);
		spellPut("jiu", -3921);
		spellPut("yuan", -3920);
		spellPut("bao", -3919);
		spellPut("zhen", -3918);
		spellPut("gu", -3917);
		spellPut("dong", -3916);
		spellPut("lu", -3915);
		spellPut("qu", -3914);
		spellPut("chi", -3913);
		spellPut("si", -3912);
		spellPut("er", -3911);
		spellPut("zhi", -3910);
		spellPut("gua", -3909);
		spellPut("xiu", -3908);
		spellPut("luan", -3907);
		spellPut("bo", -3906);
		spellPut("li", -3905);
		spellPut("gu", -3904);
		spellPut("yu", -3903);
		spellPut("xian", -3902);
		spellPut("ti", -3901);
		spellPut("wu", -3900);
		spellPut("miao", -3899);
		spellPut("an", -3898);
		spellPut("bei", -3897);
		spellPut("chun", -3896);
		spellPut("hu", -3895);
		spellPut("e", -3894);
		spellPut("ci", -3893);
		spellPut("mei", -3892);
		spellPut("wu", -3891);
		spellPut("yao", -3890);
		spellPut("jian", -3889);
		spellPut("ying", -3888);
		spellPut("zhe", -3887);
		spellPut("liu", -3886);
		spellPut("liao", -3885);
		spellPut("jiao", -3884);
		spellPut("jiu", -3883);
		spellPut("yu", -3882);
		spellPut("hu", -3881);
		spellPut("lu", -3880);
		spellPut("guan", -3879);
		spellPut("ding", -3877);
		spellPut("jie", -3876);
		spellPut("li", -3875);
		spellPut("shan", -3874);
		spellPut("li", -3873);
		spellPut("you", -3872);
		spellPut("gan", -3871);
		spellPut("ke", -3870);
		spellPut("da", -3869);
		spellPut("zha", -3868);
		spellPut("pao", -3867);
		spellPut("zhu", -3866);
		spellPut("xuan", -3865);
		spellPut("jia", -3864);
		spellPut("ya", -3863);
		spellPut("yi", -3862);
		spellPut("zhi", -3861);
		spellPut("lao", -3860);
		spellPut("wu", -3859);
		spellPut("cuo", -3858);
		spellPut("xian", -3857);
		spellPut("sha", -3856);
		spellPut("zhu", -3855);
		spellPut("fei", -3854);
		spellPut("gu", -3853);
		spellPut("wei", -3852);
		spellPut("yu", -3851);
		spellPut("yu", -3850);
		spellPut("dan", -3849);
		spellPut("la", -3848);
		spellPut("yi", -3847);
		spellPut("hou", -3846);
		spellPut("chai", -3845);
		spellPut("lou", -3844);
		spellPut("jia", -3843);
		spellPut("sao", -3842);
		spellPut("chi", -3679);
		spellPut("mo", -3678);
		spellPut("ban", -3677);
		spellPut("ji", -3676);
		spellPut("huang", -3675);
		spellPut("biao", -3674);
		spellPut("luo", -3673);
		spellPut("ying", -3672);
		spellPut("zhai", -3671);
		spellPut("long", -3670);
		spellPut("yin", -3669);
		spellPut("chou", -3668);
		spellPut("ban", -3667);
		spellPut("lai", -3666);
		spellPut("yi", -3665);
		spellPut("dian", -3664);
		spellPut("pi", -3663);
		spellPut("dian", -3662);
		spellPut("qu", -3661);
		spellPut("yi", -3660);
		spellPut("song", -3659);
		spellPut("xi", -3658);
		spellPut("qiong", -3657);
		spellPut("zhun", -3656);
		spellPut("bian", -3655);
		spellPut("yao", -3654);
		spellPut("tiao", -3653);
		spellPut("dou", -3652);
		spellPut("ke", -3651);
		spellPut("yu", -3650);
		spellPut("xun", -3649);
		spellPut("ju", -3648);
		spellPut("yu", -3647);
		spellPut("cha", -3645);
		spellPut("na", -3644);
		spellPut("ren", -3643);
		spellPut("jin", -3642);
		spellPut("mei", -3641);
		spellPut("pan", -3640);
		spellPut("dang", -3639);
		spellPut("jia", -3638);
		spellPut("ge", -3637);
		spellPut("ken", -3636);
		spellPut("lian", -3635);
		spellPut("cheng", -3634);
		spellPut("lian", -3633);
		spellPut("jian", -3632);
		spellPut("biao", -3631);
		spellPut("chu", -3630);
		spellPut("ti", -3629);
		spellPut("bi", -3628);
		spellPut("ju", -3627);
		spellPut("duo", -3626);
		spellPut("da", -3625);
		spellPut("bei", -3624);
		spellPut("bao", -3623);
		spellPut("lv", -3622);
		spellPut("bian", -3621);
		spellPut("lan", -3620);
		spellPut("chi", -3619);
		spellPut("zhe", -3618);
		spellPut("qiang", -3617);
		spellPut("ru", -3616);
		spellPut("pan", -3615);
		spellPut("pi", -3614);
		spellPut("xu", -3613);
		spellPut("jun", -3612);
		spellPut("cun", -3611);
		spellPut("guan", -3610);
		spellPut("lei", -3609);
		spellPut("zi", -3608);
		spellPut("chao", -3607);
		spellPut("si", -3606);
		spellPut("huo", -3605);
		spellPut("lao", -3604);
		spellPut("tang", -3603);
		spellPut("ou", -3602);
		spellPut("lou", -3601);
		spellPut("jiang", -3600);
		spellPut("nou", -3599);
		spellPut("mo", -3598);
		spellPut("die", -3597);
		spellPut("ding", -3596);
		spellPut("dan", -3595);
		spellPut("ling", -3594);
		spellPut("ning", -3593);
		spellPut("guo", -3592);
		spellPut("kui", -3591);
		spellPut("ao", -3590);
		spellPut("qin", -3589);
		spellPut("tan", -3588);
		spellPut("qi", -3587);
		spellPut("qi", -3586);
		spellPut("hang", -3423);
		spellPut("jie", -3422);
		spellPut("ge", -3421);
		spellPut("ying", -3420);
		spellPut("ke", -3419);
		spellPut("e", -3418);
		spellPut("e", -3417);
		spellPut("zhuan", -3416);
		spellPut("nie", -3415);
		spellPut("man", -3414);
		spellPut("hao", -3413);
		spellPut("hao", -3412);
		spellPut("ru", -3411);
		spellPut("pin", -3410);
		spellPut("qian", -3408);
		spellPut("qiu", -3407);
		spellPut("ji", -3406);
		spellPut("chai", -3405);
		spellPut("hui", -3404);
		spellPut("ge", -3403);
		spellPut("meng", -3402);
		spellPut("pi", -3401);
		spellPut("pi", -3400);
		spellPut("rui", -3399);
		spellPut("xian", -3398);
		spellPut("hao", -3397);
		spellPut("jie", -3396);
		spellPut("dou", -3395);
		spellPut("yin", -3394);
		spellPut("yin", -3393);
		spellPut("chi", -3392);
		spellPut("gu", -3391);
		spellPut("gu", -3390);
		spellPut("he", -3389);
		spellPut("li", -3388);
		spellPut("li", -3388);
		spellPut("you", -3387);
		spellPut("ran", -3386);
		spellPut("qiu", -3385);
		spellPut("qiu", -3384);
		spellPut("ling", -3383);
		spellPut("cheng", -3382);
		spellPut("you", -3381);
		spellPut("qiong", -3380);
		spellPut("jia", -3379);
		spellPut("nao", -3378);
		spellPut("zhi", -3377);
		spellPut("si", -3376);
		spellPut("qu", -3375);
		spellPut("ting", -3374);
		spellPut("kuo", -3373);
		spellPut("jiao", -3372);
		spellPut("yang", -3371);
		spellPut("mou", -3370);
		spellPut("shen", -3369);
		spellPut("zhe", -3368);
		spellPut("shao", -3367);
		spellPut("wu", -3366);
		spellPut("li", -3365);
		spellPut("chu", -3364);
		spellPut("fu", -3363);
		spellPut("qiang", -3362);
		spellPut("qing", -3361);
		spellPut("qi", -3360);
		spellPut("xi", -3359);
		spellPut("yu", -3358);
		spellPut("fei", -3357);
		spellPut("guo", -3356);
		spellPut("guo", -3355);
		spellPut("yi", -3354);
		spellPut("pi", -3353);
		spellPut("tiao", -3352);
		spellPut("quan", -3351);
		spellPut("wan", -3350);
		spellPut("lang", -3349);
		spellPut("meng", -3348);
		spellPut("chun", -3347);
		spellPut("rong", -3346);
		spellPut("nan", -3345);
		spellPut("fu", -3344);
		spellPut("kui", -3343);
		spellPut("ke", -3342);
		spellPut("fu", -3341);
		spellPut("sou", -3340);
		spellPut("yu", -3339);
		spellPut("you", -3338);
		spellPut("lou", -3337);
		spellPut("qiu", -3336);
		spellPut("bian", -3335);
		spellPut("mao", -3334);
		spellPut("qin", -3333);
		spellPut("ao", -3332);
		spellPut("man", -3331);
		spellPut("mang", -3330);
		spellPut("ma", -3167);
		spellPut("yuan", -3166);
		spellPut("xi", -3165);
		spellPut("chi", -3164);
		spellPut("tang", -3163);
		spellPut("pang", -3162);
		spellPut("shi", -3161);
		spellPut("huang", -3160);
		spellPut("cao", -3159);
		spellPut("piao", -3158);
		spellPut("tang", -3157);
		spellPut("xi", -3156);
		spellPut("xiang", -3155);
		spellPut("zhong", -3154);
		spellPut("zhang", -3153);
		spellPut("shuai", -3152);
		spellPut("mao", -3151);
		spellPut("peng", -3150);
		spellPut("hui", -3149);
		spellPut("pan", -3148);
		spellPut("shan", -3147);
		spellPut("huo", -3146);
		spellPut("meng", -3145);
		spellPut("chan", -3144);
		spellPut("lian", -3143);
		spellPut("mie", -3142);
		spellPut("li", -3141);
		spellPut("du", -3140);
		spellPut("qu", -3139);
		spellPut("fou", -3138);
		spellPut("ying", -3137);
		spellPut("qing", -3136);
		spellPut("xia", -3135);
		spellPut("shi", -3134);
		spellPut("zhu", -3133);
		spellPut("yu", -3132);
		spellPut("ji", -3131);
		spellPut("du", -3130);
		spellPut("ji", -3129);
		spellPut("jian", -3128);
		spellPut("zhao", -3127);
		spellPut("zi", -3126);
		spellPut("hu", -3125);
		spellPut("po", -3123);
		spellPut("da", -3122);
		spellPut("sheng", -3121);
		spellPut("ze", -3120);
		spellPut("gou", -3119);
		spellPut("li", -3118);
		spellPut("si", -3117);
		spellPut("tiao", -3116);
		spellPut("jia", -3115);
		spellPut("bian", -3114);
		spellPut("chi", -3113);
		spellPut("kou", -3112);
		spellPut("bi", -3111);
		spellPut("xian", -3110);
		spellPut("yan", -3109);
		spellPut("quan", -3108);
		spellPut("zheng", -3107);
		spellPut("jun", -3106);
		spellPut("shi", -3105);
		spellPut("gang", -3104);
		spellPut("pa", -3103);
		spellPut("shao", -3102);
		spellPut("xiao", -3101);
		spellPut("qing", -3100);
		spellPut("ze", -3099);
		spellPut("qie", -3098);
		spellPut("zhu", -3097);
		spellPut("ruo", -3096);
		spellPut("qian", -3095);
		spellPut("tuo", -3094);
		spellPut("bi", -3093);
		spellPut("dan", -3092);
		spellPut("kong", -3091);
		spellPut("yuan", -3090);
		spellPut("xiao", -3089);
		spellPut("zhen", -3088);
		spellPut("kui", -3087);
		spellPut("huang", -3086);
		spellPut("hou", -3085);
		spellPut("gou", -3084);
		spellPut("fei", -3083);
		spellPut("li", -3082);
		spellPut("bi", -3081);
		spellPut("chi", -3080);
		spellPut("su", -3079);
		spellPut("mie", -3078);
		spellPut("dou", -3077);
		spellPut("lu", -3076);
		spellPut("duan", -3075);
		spellPut("gui", -3074);
		spellPut("dian", -2911);
		spellPut("zan", -2910);
		spellPut("deng", -2909);
		spellPut("bo", -2908);
		spellPut("lai", -2907);
		spellPut("zhou", -2906);
		spellPut("yu", -2905);
		spellPut("yu", -2904);
		spellPut("chong", -2903);
		spellPut("xi", -2902);
		spellPut("nie", -2901);
		spellPut("nu", -2900);
		spellPut("chuan", -2899);
		spellPut("shan", -2898);
		spellPut("yi", -2897);
		spellPut("bi", -2896);
		spellPut("zhong", -2895);
		spellPut("ban", -2894);
		spellPut("fang", -2893);
		spellPut("ge", -2892);
		spellPut("lu", -2891);
		spellPut("zhu", -2890);
		spellPut("ze", -2889);
		spellPut("xi", -2888);
		spellPut("xi", -2888);
		spellPut("shao", -2887);
		spellPut("wei", -2886);
		spellPut("meng", -2885);
		spellPut("shou", -2884);
		spellPut("cao", -2883);
		spellPut("chong", -2882);
		spellPut("meng", -2881);
		spellPut("qin", -2880);
		spellPut("niao", -2879);
		spellPut("jia", -2878);
		spellPut("qiu", -2877);
		spellPut("sha", -2876);
		spellPut("bi", -2875);
		spellPut("di", -2874);
		spellPut("qiang", -2873);
		spellPut("suo", -2872);
		spellPut("jie", -2871);
		spellPut("tang", -2870);
		spellPut("xi", -2869);
		spellPut("xian", -2868);
		spellPut("mi", -2867);
		spellPut("ba", -2866);
		spellPut("li", -2865);
		spellPut("tiao", -2864);
		spellPut("xi", -2863);
		spellPut("zi", -2862);
		spellPut("can", -2861);
		spellPut("lin", -2860);
		spellPut("zong", -2859);
		spellPut("san", -2858);
		spellPut("hou", -2857);
		spellPut("zan", -2856);
		spellPut("ci", -2855);
		spellPut("xu", -2854);
		spellPut("rou", -2853);
		spellPut("qiu", -2852);
		spellPut("jiang", -2851);
		spellPut("gen", -2850);
		spellPut("ji", -2849);
		spellPut("yi", -2848);
		spellPut("ling", -2847);
		spellPut("xi", -2846);
		spellPut("zhu", -2845);
		spellPut("fei", -2844);
		spellPut("jian", -2843);
		spellPut("pian", -2842);
		spellPut("he", -2841);
		spellPut("yi", -2840);
		spellPut("mi", -2839);
		spellPut("zhi", -2838);
		spellPut("qi", -2837);
		spellPut("qi", -2836);
		spellPut("qi", -2836);
		spellPut("yao", -2835);
		spellPut("dao", -2834);
		spellPut("fu", -2833);
		spellPut("fu", -2833);
		spellPut("qu", -2832);
		spellPut("jiu", -2831);
		spellPut("ju", -2830);
		spellPut("lie", -2829);
		spellPut("zi", -2828);
		spellPut("zan", -2827);
		spellPut("nan", -2826);
		spellPut("zhe", -2825);
		spellPut("jiang", -2824);
		spellPut("chi", -2823);
		spellPut("ding", -2822);
		spellPut("gan", -2821);
		spellPut("zhou", -2820);
		spellPut("yi", -2819);
		spellPut("gu", -2818);
		spellPut("cu", -2655);
		spellPut("tuo", -2654);
		spellPut("xian", -2653);
		spellPut("ming", -2652);
		spellPut("zhi", -2651);
		spellPut("yan", -2650);
		spellPut("shai", -2649);
		spellPut("cheng", -2648);
		spellPut("tu", -2647);
		spellPut("lei", -2646);
		spellPut("kun", -2645);
		spellPut("pei", -2644);
		spellPut("hu", -2643);
		spellPut("ti", -2642);
		spellPut("xu", -2641);
		spellPut("hai", -2640);
		spellPut("tang", -2639);
		spellPut("lao", -2638);
		spellPut("bu", -2637);
		spellPut("jiao", -2636);
		spellPut("xi", -2635);
		spellPut("ju", -2634);
		spellPut("li", -2633);
		spellPut("xun", -2632);
		spellPut("shi", -2631);
		spellPut("cuo", -2630);
		spellPut("dun", -2629);
		spellPut("qiong", -2628);
		spellPut("xue", -2627);
		spellPut("cu", -2626);
		spellPut("bie", -2625);
		spellPut("bao", -2624);
		spellPut("ta", -2623);
		spellPut("jian", -2622);
		spellPut("fu", -2621);
		spellPut("qiang", -2620);
		spellPut("zhi", -2619);
		spellPut("fu", -2618);
		spellPut("shan", -2617);
		spellPut("li", -2616);
		spellPut("tuo", -2615);
		spellPut("jia", -2614);
		spellPut("bo", -2613);
		spellPut("tai", -2612);
		spellPut("kui", -2611);
		spellPut("qiao", -2610);
		spellPut("bi", -2609);
		spellPut("xian", -2608);
		spellPut("xian", -2607);
		spellPut("ji", -2606);
		spellPut("jiao", -2605);
		spellPut("liang", -2604);
		spellPut("ji", -2603);
		spellPut("chuo", -2602);
		spellPut("huai", -2601);
		spellPut("chi", -2600);
		spellPut("zhi", -2599);
		spellPut("zhi", -2599);
		spellPut("dian", -2598);
		spellPut("bo", -2597);
		spellPut("zhi", -2596);
		spellPut("jian", -2595);
		spellPut("die", -2594);
		spellPut("chuai", -2593);
		spellPut("zhong", -2592);
		spellPut("ju", -2591);
		spellPut("duo", -2590);
		spellPut("cuo", -2589);
		spellPut("pian", -2588);
		spellPut("rou", -2587);
		spellPut("nie", -2586);
		spellPut("pan", -2585);
		spellPut("qi", -2584);
		spellPut("chu", -2583);
		spellPut("jue", -2582);
		spellPut("pu", -2581);
		spellPut("fan", -2580);
		spellPut("cu", -2579);
		spellPut("zhu", -2578);
		spellPut("lin", -2577);
		spellPut("chan", -2576);
		spellPut("lie", -2575);
		spellPut("zuan", -2574);
		spellPut("xie", -2573);
		spellPut("zhi", -2572);
		spellPut("diao", -2571);
		spellPut("mo", -2570);
		spellPut("xiu", -2569);
		spellPut("mo", -2568);
		spellPut("pi", -2567);
		spellPut("hu", -2566);
		spellPut("jue", -2565);
		spellPut("shang", -2564);
		spellPut("gu", -2563);
		spellPut("zi", -2562);
		spellPut("gong", -2399);
		spellPut("su", -2398);
		spellPut("zhi", -2397);
		spellPut("zi", -2396);
		spellPut("qing", -2395);
		spellPut("jing", -2394);
		spellPut("yu", -2393);
		spellPut("li", -2392);
		spellPut("wen", -2391);
		spellPut("ting", -2390);
		spellPut("ji", -2389);
		spellPut("pei", -2388);
		spellPut("fei", -2387);
		spellPut("sha", -2386);
		spellPut("yin", -2385);
		spellPut("ai", -2384);
		spellPut("san", -2383);
		spellPut("mai", -2382);
		spellPut("chen", -2381);
		spellPut("ju", -2380);
		spellPut("bao", -2379);
		spellPut("tiao", -2378);
		spellPut("zi", -2377);
		spellPut("ken", -2376);
		spellPut("yu", -2375);
		spellPut("chuo", -2374);
		spellPut("wo", -2373);
		spellPut("mian", -2372);
		spellPut("yuan", -2371);
		spellPut("tuo", -2370);
		spellPut("cui", -2369);
		spellPut("sun", -2368);
		spellPut("juan", -2367);
		spellPut("ju", -2366);
		spellPut("luo", -2365);
		spellPut("ju", -2364);
		spellPut("chou", -2363);
		spellPut("qiong", -2362);
		spellPut("luan", -2361);
		spellPut("wu", -2360);
		spellPut("zan", -2359);
		spellPut("mou", -2358);
		spellPut("ao", -2357);
		spellPut("liu", -2356);
		spellPut("bei", -2355);
		spellPut("xin", -2354);
		spellPut("you", -2353);
		spellPut("fang", -2352);
		spellPut("ba", -2351);
		spellPut("ping", -2350);
		spellPut("nian", -2349);
		spellPut("lu", -2348);
		spellPut("su", -2347);
		spellPut("fu", -2346);
		spellPut("hou", -2345);
		spellPut("tai", -2344);
		spellPut("gui", -2343);
		spellPut("jie", -2342);
		spellPut("wei", -2341);
		spellPut("er", -2340);
		spellPut("ji", -2339);
		spellPut("jiao", -2338);
		spellPut("xiang", -2337);
		spellPut("xun", -2336);
		spellPut("geng", -2335);
		spellPut("li", -2334);
		spellPut("lian", -2333);
		spellPut("jian", -2332);
		spellPut("shi", -2331);
		spellPut("tiao", -2330);
		spellPut("gun", -2329);
		spellPut("sha", -2328);
		spellPut("huan", -2327);
		spellPut("ji", -2326);
		spellPut("qing", -2325);
		spellPut("ling", -2324);
		spellPut("zou", -2323);
		spellPut("fei", -2322);
		spellPut("kun", -2321);
		spellPut("chang", -2320);
		spellPut("gu", -2319);
		spellPut("ni", -2318);
		spellPut("nian", -2317);
		spellPut("diao", -2316);
		spellPut("shi", -2315);
		spellPut("zi", -2314);
		spellPut("fen", -2313);
		spellPut("die", -2312);
		spellPut("e", -2311);
		spellPut("qiu", -2310);
		spellPut("fu", -2309);
		spellPut("huang", -2308);
		spellPut("bian", -2307);
		spellPut("sao", -2306);
		spellPut("ao", -2143);
		spellPut("qi", -2142);
		spellPut("ta", -2141);
		spellPut("guan", -2140);
		spellPut("yao", -2139);
		spellPut("le", -2138);
		spellPut("biao", -2137);
		spellPut("xue", -2136);
		spellPut("man", -2135);
		spellPut("min", -2134);
		spellPut("yong", -2133);
		spellPut("gui", -2132);
		spellPut("shan", -2131);
		spellPut("zun", -2130);
		spellPut("li", -2129);
		spellPut("da", -2128);
		spellPut("yang", -2127);
		spellPut("da", -2126);
		spellPut("qiao", -2125);
		spellPut("man", -2124);
		spellPut("jian", -2123);
		spellPut("ju", -2122);
		spellPut("rou", -2121);
		spellPut("gou", -2120);
		spellPut("bei", -2119);
		spellPut("jie", -2118);
		spellPut("tou", -2117);
		spellPut("ku", -2116);
		spellPut("gu", -2115);
		spellPut("di", -2114);
		spellPut("hou", -2113);
		spellPut("ge", -2112);
		spellPut("ke", -2111);
		spellPut("bi", -2110);
		spellPut("lou", -2109);
		spellPut("qia", -2108);
		spellPut("kuan", -2107);
		spellPut("bin", -2106);
		spellPut("du", -2105);
		spellPut("mei", -2104);
		spellPut("ba", -2103);
		spellPut("yan", -2102);
		spellPut("liang", -2101);
		spellPut("xiao", -2100);
		spellPut("wang", -2099);
		spellPut("xiang", -2097);
		spellPut("yan", -2096);
		spellPut("tie", -2095);
		spellPut("tao", -2094);
		spellPut("yong", -2093);
		spellPut("biao", -2092);
		spellPut("kun", -2091);
		spellPut("mao", -2090);
		spellPut("ran", -2089);
		spellPut("tiao", -2088);
		spellPut("ji", -2087);
		spellPut("zi", -2086);
		spellPut("xiu", -2085);
		spellPut("qian", -2084);
		spellPut("jiu", -2083);
		spellPut("bin", -2082);
		spellPut("huan", -2081);
		spellPut("lie", -2080);
		spellPut("me", -2079);
		spellPut("hui", -2078);
		spellPut("mi", -2077);
		spellPut("ji", -2076);
		spellPut("jun", -2075);
		spellPut("zhu", -2074);
		spellPut("mi", -2073);
		spellPut("qi", -2072);
		spellPut("ao", -2071);
		spellPut("she", -2070);
		spellPut("lin", -2069);
		spellPut("dai", -2068);
		spellPut("chu", -2067);
		spellPut("you", -2066);
		spellPut("xia", -2065);
		spellPut("yi", -2064);
		spellPut("qu", -2063);
		spellPut("du", -2062);
		spellPut("li", -2061);
		spellPut("qing", -2060);
		spellPut("can", -2059);
		spellPut("an", -2058);
		spellPut("fen", -2057);
		spellPut("you", -2056);
		spellPut("wu", -2055);
		spellPut("yan", -2054);
		spellPut("xi", -2053);
		spellPut("qiu", -2052);
		spellPut("han", -2051);
		spellPut("zha", -2050);
	}

	/**
	 * 获得单个汉字的Ascii码
	 * 
	 * @param cn
	 *            中文汉字字符
	 * @return 错误返回 0,否则返回ascii码
	 */
	public static int getCnAscii(char cn)
	{
		byte[] byteAscii;
		try
		{
			byteAscii = (String.valueOf(cn)).getBytes("GBK");
		} catch (UnsupportedEncodingException ex)
		{
			return 0;
		}
		if (byteAscii == null || byteAscii.length > 2 || byteAscii.length <= 0)
		{
			return 0;
		}
		if (byteAscii.length == 1)
		{
			return byteAscii[0];
		}
		if (byteAscii.length == 2)
		{
			int iHightByte = 256 + byteAscii[0];
			int iLowByte = 256 + byteAscii[1];
			int iAscii = (256 * iHightByte + iLowByte) - 256 * 256;
			return iAscii;
		}
		return 0;
	}

	/**
	 * 根据ASCII码到SpellMap中查找对应的拼音
	 * 
	 * @param ascii
	 *            int 字符对应的ASCII
	 * @return String 拼音,首先判断ASCII是否>0&<160,如果是返回对应的字符,
	 *         否则到SpellMap中查找,如果没有找到拼音,则返回null,如果找到则返回拼音.
	 */
	public static String getSpellByAscii(int ascii)
	{
		if (ascii > 0 && ascii < 160)
		{
			return String.valueOf((char) ascii);
		}

		if (ascii < -20319 || ascii > -2050)
		{
			return null;
		}
		String strSpell0 = null;
		String strSpell = null;
		int iAsciiRang0 = -20319;
		int iAsciiRang;
		for (int i = 0, j = spellList.size(); i < j; i++)
		{
			Spell objSpell = spellList.get(i);
			strSpell = objSpell.getSpells();
			iAsciiRang = objSpell.getSpellValue();
			if (ascii >= iAsciiRang0 && ascii < iAsciiRang)
			{
				return (strSpell0 == null) ? strSpell : strSpell0;
			}
			strSpell0 = strSpell;
			iAsciiRang0 = iAsciiRang;
		}
		return null;
	}

	/**
	 * 返回字符串的全拼,仅中文汉字转化为全拼,其它字符不进行转换
	 * 
	 * @param cnStr
	 *            String 包含中文汉字的字符串
	 * @return String 转换成全拼后的字符串
	 */
	public static String getFullSpell(String cnStr)
	{
		if (null == cnStr || "".equals(cnStr.trim()))
		{
			return cnStr;
		}
		char[] chCnArs = cnStr.toCharArray();
		StringBuffer sbRetuBuf = new StringBuffer();
		for (int i = 0, iLen = chCnArs.length; i < iLen; i++)
		{
			int iAscii = getCnAscii(chCnArs[i]);
			if (iAscii == 0)
			{
				sbRetuBuf.append(chCnArs[i]);
			} else
			{
				String strSpell = getSpellByAscii(iAscii);
				if (strSpell == null)
				{
					sbRetuBuf.append(chCnArs[i]);
				} else
				{
					sbRetuBuf.append(strSpell);
				}
			}
		}
		return sbRetuBuf.toString();
	}

	/**
	 * 获取汉语字符串的声母组合，每个汉字取拼音的第一个字符组成的一个字符串. 除汉字以外的字符不进行转换
	 * 
	 * @param cnStr
	 *            汉字的字符串
	 * @return 每个汉字拼音的第一个字母所组成的字符串
	 */
	public static String getFirstSpell(String cnStr)
	{
		if (null == cnStr || "".equals(cnStr.trim()))
		{
			return cnStr;
		}

		String strFirst = "ch,sh,zh";
		char[] chCnArs = cnStr.toCharArray();
		StringBuffer sbReturn = new StringBuffer();
		for (int i = 0, iLen = chCnArs.length; i < iLen; i++)
		{
			int iAscii = getCnAscii(chCnArs[i]);
			if (iAscii == 0)
			{
				sbReturn.append(chCnArs[i]);
				continue;
			}
			String strSpell = getSpellByAscii(iAscii);
			if (strSpell == null)
			{
				sbReturn.append(chCnArs[i]);
			} else if (strSpell.length() < 2)
			{
				sbReturn.append(strSpell);
			} else
			{
				String strTemp = strSpell.substring(0, 2);
				if (strFirst.indexOf(strTemp) > -1)
				{
					sbReturn.append(strTemp);
				} else
				{
					sbReturn.append(strSpell.substring(0, 1));
				}
			}
		}
		return sbReturn.toString();
	}

	/**
	 * 以字符串的形式返回ascii
	 * 
	 * @param cnStr
	 *            String 字符串
	 * @return String 字符串的ascii
	 */
	public static String getFullAscii(String cnStr)
	{
		if (null == cnStr || "".equals(cnStr.trim()))
		{
			return cnStr;
		}
		char[] chCnArs = cnStr.toCharArray();
		StringBuffer sbReturn = new StringBuffer();
		for (int i = 0, iLen = chCnArs.length; i < iLen; i++)
		{
			int iAscii = getCnAscii(chCnArs[i]);
			if (iAscii == 0)
			{ // 取Ascii时出错
				sbReturn.append(chCnArs[i]).append(" ");
			} else
			{
				sbReturn.append((Integer.toHexString(iAscii)).toUpperCase())
						.append(" ");
			}
		} // end of for
		return sbReturn.toString();
	}

	/**
	 * 是否包含汉字字符
	 * 
	 * @param cnStr
	 *            指定字符串
	 * @return true:是 false:否
	 */
	public static boolean isContainChineseCharacter(String cnStr)
	{
		if (TextUtils.isEmpty(cnStr))
		{
			return false;
		}
		char[] chCnArs = cnStr.toCharArray();
		boolean bIsContainChineseCharacter = false;
		for (int i = 0; i < chCnArs.length; i++)
		{
			byte[] byteCns = ("" + chCnArs[i]).getBytes();
			if (byteCns.length == 2)
			{
				int[] iInts = new int[2];
				iInts[0] = byteCns[0] & 0xff;
				iInts[1] = byteCns[1] & 0xff;
				if (iInts[0] >= 0x81 && iInts[0] <= 0xFE && iInts[1] >= 0x40
						&& iInts[1] <= 0xFE)
				{
					bIsContainChineseCharacter = true;
					break;
				}
			}
		}
		return bIsContainChineseCharacter;
	}

	/**
	 * 得到字符串的长度，一个汉字长度为2
	 * 
	 * @param str
	 *            指定字符串
	 * @return int 字符串的长度
	 */
	public static int getStringLength(String str)
	{
		if (TextUtils.isEmpty(str))
		{
			return 0;
		}
		int iLen = 0;
		char[] chCnArs = str.toCharArray();
		for (int i = 0; i < chCnArs.length; i++)
		{
			char chTemp = chCnArs[i];
			String strTemp = String.valueOf(chTemp);
			if (isContainChineseCharacter(strTemp))
			{
				iLen += 2;
			} else
			{
				iLen++;
			}
		}
		return iLen;
	}
}

